第一题直接映射2个原点坐标,代码量极小 int origin = (n - 1) / 2; int center = (m - 1) / 2;//i = center+x = origin+x => x = i - center, for (int j = 0; j < m; j++) { for (int k = 0; k < m; k++) { int dj = j - center; int dk = k - center; ans[j][k] = wall[(origin + dj + n * 100) % n][(origin + dk + n * 100) % n]; cout << ans[j][k]; } cout << endl; }
2 1

相关推荐

牛客网
牛客企业服务