Codeforces Global Round 12 C2問題 (750pt)
Problem description
省略
省略
C++に変換後のコードはこちら
//no-unlocked
int N;
char S[300][302];
int pt[1000];
int cost[1000][3];
int res[1000], res_cost, tmp;
{
REP(rd_int()){
res_cost = int_inf;
rd(N,S(N));
rep(i,2*N) rep(j,3) cost[i][j] = 0;
rep(i,N) rep(j,N){
if(S[i][j] == 'O') cost[i+j][0]++;
if(S[i][j] == 'X') cost[i+j][1]++;
}
rep(ps,-1,2) if(ps) rep(st,3){
rep(i,2*N) pt[i] = (st + i * ps) %% 3;
tmp = sum[i,0,2*N](cost[i][pt[i]]);
if(tmp < res_cost){
res_cost = tmp;
rep(i,2*N) res[i] = pt[i];
}
}
rep(i,N) rep(j,N){
if(res[i+j]==0 && S[i][j] == 'O') S[i][j] = 'X', continue;
if(res[i+j]==1 && S[i][j] == 'X') S[i][j] = 'O', continue;
}
wtLn(S(N));
}
}
Current time: 2024年03月28日22時11分02秒
Last modified: 2020年12月11日22時52分19秒 (by laycrs)
Tags: Competitive_Programming_Incomplete Codeforces Codeforces_Global_Round_12
トップページに戻る
Logged in as: unknown user (not login)