Codeforces Round #824 DIV2 C問題 (1250pt)
Problem description
省略
省略
C++に変換後のコードはこちら
//no-unlocked
unionFind uf;
int is_ng(int go[]){
if(arrCountVal(26,go,-1)==0) return 0;
uf.init(26);
rep(i,26) if(go[i] >= 0) if(!uf(i,go[i])) return 1;
return 0;
}
{
uf.walloc(26);
REP(rd_int()){
int @N; string @S;
int go[26], use[26] = {};
rep(i,N) S[i] -= 'a';
rep(i,26) go[i] = -1;
rep(i,N) if(go[S[i]]==-1){
rep(j,26) if(use[j]==0 && S[i] != j){
go[S[i]] = j;
if(!is_ng(go)) use[j] = 1, break;
}
}
rep(i,N) S[i] = go[S[i]] + 'a';
wt(S);
}
}
Current time: 2024年05月05日18時48分51秒
Last modified: 2022年12月30日21時54分23秒 (by laycrs)
Tags: Competitive_Programming_Incomplete Codeforces CF824 CF_DIV2_C
トップページに戻る
Logged in as: unknown user (not login)