944D - Game with String - CodeForces Solution


*1600

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>

using namespace std;

int main() {
    string s;
    cin >> s;
    int l = s.length();
    vector <vector <int>> d(30);
    for (int i = 0; i < l; i++) {
        d[s[i] - 'a'].push_back(i);
    }
    int sum = 0;
    for (int i = 0; i < 30; i++) {
        int mx = 0;
        for (int j = 1; j <= l; j++) {
            vector <int> cnt(30);
            for (auto el: d[i]) {
                cnt[s[(el + j) % l] - 'a']++;
            }
            int cur = 0;
            for (int i = 0; i < 30; i++) {
                if (cnt[i] == 1) cur++;
            }
            mx = max(mx, cur);
        }
        sum += mx;
    }
    cout << setprecision(15) << (long double)sum / l;
}/*1692278285.5531268*/


Comments

Submit
0 Comments
More Questions

620A - Professor GukiZ's Robot
1342A - Road To Zero
1520A - Do Not Be Distracted
352A - Jeff and Digits
1327A - Sum of Odd Integers
1276A - As Simple as One and Two
812C - Sagheer and Nubian Market
272A - Dima and Friends
1352C - K-th Not Divisible by n
545C - Woodcutters
1528B - Kavi on Pairing Duty
339B - Xenia and Ringroad
189A - Cut Ribbon
1182A - Filling Shapes
82A - Double Cola
45A - Codecraft III
1242A - Tile Painting
1663E - Are You Safe
1663D - Is it rated - 3
1311A - Add Odd or Subtract Even
977F - Consecutive Subsequence
939A - Love Triangle
755A - PolandBall and Hypothesis
760B - Frodo and pillows
1006A - Adjacent Replacements
1195C - Basketball Exercise
1206A - Choose Two Numbers
1438B - Valerii Against Everyone
822A - I'm bored with life
9A - Die Roll