実装
配る形が楽だった.貰うでも実装は可能だが,何となく配る法が自然に感じた.
試験本番では,実装が面倒で一旦飛ばして戻ってきたら, すんなり書けた. 躓いたり時間がかかると感じたら,試験では一旦飛ばすのは有効.
使っている記号,マクロ等 "https://ecsmtlir.hatenablog.com/entry/2022/12/23/131925"
int main() {
ll n, m ;
cin >> n;
cinv(s);
rep(i,n) t[i].resize(n);
rep(x,n) rep(y,n){
if(x == 0){
if(y != n-1) t[x][y+1] = s[x][y];
else t[x+1][n-1] = s[x][n-1];
}
else if(x == n-1){
if(y != 0) t[x][y-1] = s[x][y];
else t[x-1][0] = s[x][0];
}
else if(y == 0){
t[x-1][y] = s[x][y];
}else if(y == n-1){
t[x+1][y] = s[x][y];
}else {
t[x][y] = s[x][y];
}
}
rep(x,n) {rep(y,n){
cout << t[x][y];
}cout << endl;}
return 0;
}