62882023-11-13 13:45:37aballaForgó rulettkerékcpp17Időlimit túllépés 35/1001.572s21044 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[i] == ids[n-j-1]) {
                cachecount++;
                ids[n-j-1] = "#";
            }
        }
        count = count + (cachecount*(cachecount+1))/2;
    }
    std::cout << count;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1828 KiB
2Elfogadva3ms2056 KiB
subtask220/20
3Elfogadva3ms2284 KiB
4Elfogadva3ms2508 KiB
5Elfogadva3ms2728 KiB
6Elfogadva3ms2956 KiB
7Elfogadva3ms2896 KiB
8Elfogadva3ms3228 KiB
9Elfogadva3ms3184 KiB
subtask315/15
10Elfogadva18ms4012 KiB
11Elfogadva23ms4272 KiB
12Elfogadva21ms4348 KiB
13Elfogadva17ms4388 KiB
14Elfogadva20ms4696 KiB
15Elfogadva24ms4564 KiB
16Elfogadva24ms4696 KiB
17Elfogadva24ms4800 KiB
subtask40/65
18Elfogadva48ms6344 KiB
19Elfogadva54ms6156 KiB
20Elfogadva201ms6108 KiB
21Elfogadva68ms6364 KiB
22Elfogadva57ms6648 KiB
23Elfogadva120ms6368 KiB
24Elfogadva71ms6540 KiB
25Elfogadva906ms6656 KiB
26Elfogadva778ms21044 KiB
27Elfogadva384ms8408 KiB
28Időlimit túllépés1.557s5476 KiB
29Időlimit túllépés1.572s12680 KiB
30Időlimit túllépés1.549s12676 KiB