6287 2023. 11. 13 13:39:10 aballa Forgó rulettkerék cpp17 Időlimit túllépés 35/100 1.575s 12188 KiB
#include <bits/stdc++.h>

int n, m;

std::string tagid(std::string str) {
    std::string s = str + str, k, min;
    min = str;

    for(int i = 1; i < m; i++) {
        k = std::string(&s[i], &s[i+m]);
        if(min > k) min = k;
    }
    return min;
}

int main() {
    int count = 0, cachecount;
    std::ios::sync_with_stdio(false);
    std::cin.tie(0);
    std::string cache, cache2;
    std::vector<std::string> ids;

    std::cin >> n >> m;
    for(int i = 0; i < n; i++) {
        std::cin >> cache; 
        ids.push_back(tagid(cache));
    }

    for (int i = 0; i < n; i++) {
        if (ids[i] == "#") {continue;}
        cachecount = 0;

        for (int j = 0; j < n-i-1; j++) {
            if (ids[n-j-1] == "#") {continue;}
            
            if(ids[i] == ids[n-j-1]) {
                cachecount++;
                ids[n-j-1] = "#";
            }
        }
        count = count + (cachecount*(cachecount+1))/2;
    }
    std::cout << count;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 1828 KiB
2 Elfogadva 3ms 2020 KiB
subtask2 20/20
3 Elfogadva 3ms 2244 KiB
4 Elfogadva 3ms 2480 KiB
5 Elfogadva 3ms 2688 KiB
6 Elfogadva 3ms 3064 KiB
7 Elfogadva 3ms 3256 KiB
8 Elfogadva 3ms 3192 KiB
9 Elfogadva 3ms 3208 KiB
subtask3 15/15
10 Elfogadva 17ms 3816 KiB
11 Elfogadva 21ms 4128 KiB
12 Elfogadva 21ms 4264 KiB
13 Elfogadva 17ms 4064 KiB
14 Elfogadva 20ms 4240 KiB
15 Elfogadva 25ms 4512 KiB
16 Elfogadva 25ms 4596 KiB
17 Elfogadva 25ms 4812 KiB
subtask4 0/65
18 Elfogadva 63ms 6360 KiB
19 Elfogadva 71ms 5964 KiB
20 Elfogadva 201ms 5748 KiB
21 Elfogadva 71ms 6328 KiB
22 Elfogadva 71ms 6488 KiB
23 Elfogadva 119ms 6172 KiB
24 Elfogadva 104ms 6412 KiB
25 Elfogadva 907ms 6352 KiB
26 Időlimit túllépés 1.575s 11996 KiB
27 Elfogadva 1.019s 8204 KiB
28 Időlimit túllépés 1.565s 5144 KiB
29 Időlimit túllépés 1.565s 12188 KiB
30 Időlimit túllépés 1.562s 12152 KiB