Codeforces Round #634 (Div. 3) ——D. Anti-Sudoku题解

题目链接:http://codeforces.com/contest/1335/problem/D

Codeforces Round #634 (Div. 3) ——D. Anti-Sudoku题解_第1张图片
Codeforces Round #634 (Div. 3) ——D. Anti-Sudoku题解_第2张图片
每个样例给定一个9*9数独,要求变换不超过9个数,使得其变成anti-数独,即每行每列每个九宫格至少有两个一样的。

耍赖思路:把所有的1变成2

代码如下:

#include 
using namespace std;
typedef long long ll;
char a[9][9];

int main() {
    int t;
    scanf("%d", &t);
    while(t--) {
		for(int i = 0; i < 9; i++) {
			for(int j = 0; j < 9; j++) {
				cin >> a[i][j];
			}
			getchar();		//把回车略过去
		}
		for(int i = 0; i < 9; i++) {
			for(int j = 0; j < 9; j++) {
				if(a[i][j] == '1') {
					cout << '2';
				} else {
					cout << a[i][j];
				}
			}
			cout << endl;
		}
	}

	return 0;
}

你可能感兴趣的:(CF)