#include <stdio.h>
#define SIZE 8
int main() {
int board[SIZE][SIZE] = {0};
int queensPlaced = 0;
while (queensPlaced < SIZE) {
int minEliminated = 65;
int bestRow = -1;
int bestCol = -1;
for (int r = 0; r < SIZE; r++) {
for (int c = 0; c < SIZE; c++) {
if (board[r][c] == 0) {
int eliminated = 0;
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
if (board[i][j] == 0 && !(i == r && j == c)) {
if (i == r || j == c || (i - j) == (r - c) || (i + j) == (r + c)) {
eliminated++;
}
}
}
}
if (eliminated < minEliminated) {
minEliminated = eliminated;
bestRow = r;
bestCol = c;
}
}
}
}
if (bestRow != -1) {
board[bestRow][bestCol] = 1;
queensPlaced++;
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
if (board[i][j] == 0 && (i == bestRow || j == bestCol || (i - j) == (bestRow - bestCol) || (i + j) == (bestRow + bestCol))) {
board[i][j] = -1;
}
}
}
} else {
break;
}
}
for (int r = 0; r < SIZE; r++) {
for (int c = 0; c < SIZE; c++) {
if (board[r][c] == 1) {
} else {
}
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFNJWkUgOAoKaW50IG1haW4oKSB7CiAgICBpbnQgYm9hcmRbU0laRV1bU0laRV0gPSB7MH07CiAgICBpbnQgcXVlZW5zUGxhY2VkID0gMDsKCiAgICB3aGlsZSAocXVlZW5zUGxhY2VkIDwgU0laRSkgewogICAgICAgIGludCBtaW5FbGltaW5hdGVkID0gNjU7CiAgICAgICAgaW50IGJlc3RSb3cgPSAtMTsKICAgICAgICBpbnQgYmVzdENvbCA9IC0xOwoKICAgICAgICBmb3IgKGludCByID0gMDsgciA8IFNJWkU7IHIrKykgewogICAgICAgICAgICBmb3IgKGludCBjID0gMDsgYyA8IFNJWkU7IGMrKykgewogICAgICAgICAgICAgICAgaWYgKGJvYXJkW3JdW2NdID09IDApIHsKICAgICAgICAgICAgICAgICAgICBpbnQgZWxpbWluYXRlZCA9IDA7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBTSVpFOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBTSVpFOyBqKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChib2FyZFtpXVtqXSA9PSAwICYmICEoaSA9PSByICYmIGogPT0gYykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PSByIHx8IGogPT0gYyB8fCAoaSAtIGopID09IChyIC0gYykgfHwgKGkgKyBqKSA9PSAociArIGMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsaW1pbmF0ZWQrKzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKGVsaW1pbmF0ZWQgPCBtaW5FbGltaW5hdGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG1pbkVsaW1pbmF0ZWQgPSBlbGltaW5hdGVkOwogICAgICAgICAgICAgICAgICAgICAgICBiZXN0Um93ID0gcjsKICAgICAgICAgICAgICAgICAgICAgICAgYmVzdENvbCA9IGM7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoYmVzdFJvdyAhPSAtMSkgewogICAgICAgICAgICBib2FyZFtiZXN0Um93XVtiZXN0Q29sXSA9IDE7CiAgICAgICAgICAgIHF1ZWVuc1BsYWNlZCsrOwogICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IFNJWkU7IGkrKykgewogICAgICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBTSVpFOyBqKyspIHsKICAgICAgICAgICAgICAgICAgICBpZiAoYm9hcmRbaV1bal0gPT0gMCAmJiAoaSA9PSBiZXN0Um93IHx8IGogPT0gYmVzdENvbCB8fCAoaSAtIGopID09IChiZXN0Um93IC0gYmVzdENvbCkgfHwgKGkgKyBqKSA9PSAoYmVzdFJvdyArIGJlc3RDb2wpKSkgewogICAgICAgICAgICAgICAgICAgICAgICBib2FyZFtpXVtqXSA9IC0xOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICBmb3IgKGludCByID0gMDsgciA8IFNJWkU7IHIrKykgewogICAgICAgIGZvciAoaW50IGMgPSAwOyBjIDwgU0laRTsgYysrKSB7CiAgICAgICAgICAgIGlmIChib2FyZFtyXVtjXSA9PSAxKSB7CiAgICAgICAgICAgICAgICBwcmludGYoIiBRICIpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcHJpbnRmKCIgLiAiKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwcmludGYoIlxuIik7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=