Codeforces Round #824 DIV2 C問題 - Phase Shift

Source

Codeforces Round #824 DIV2 C問題 (1250pt)
Problem description

問題概要

省略

解法

省略

cLay(version 20221122-1)のコード

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)

ログイン: