省略
省略
C++に変換後のコードはこちら
char S[1000002]; int N;
int cnt[26];
{
int i, j, k, m;
double res;
rd(S@N);
rep(i,N) S[i] -= 'a';
res = 0;
rep(k,1,27){
j = 0;
m = 0;
rep(i,26) cnt[i] = 0;
rep(i,N){
while(j<N && m<k){
if((cnt[S[j]]++)==0) m++;
j++;
}
if(j==N && m<k) break;
res += N-j+1;
if((--cnt[S[i]])==0) m--;
}
}
res /= (double)N*(N+1)/2;
wt(res);
}
Current time: 2024年04月26日07時10分10秒
Last modified: 2019年08月21日06時07分28秒 (by laycrs)
Tags: Competitive_Programming_Incomplete yukicoder
トップページに戻る
Logged in as: unknown user (not login)