Submission #9189949
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MX = 1005;
char s[MX][MX];
int from[MX];
string SIX[6] = {"aabb..", "b..cc.", "ba....", ".a..aa", "..a..b", "..a..b"};
string FIVE[5] = {"aabbc",
"dee.c",
"d..fg",
"h..fg",
"hssjj"};
string FOUR[4] = {"aabc",
"ddbc",
"fghh",
"fgjj"};
int main()
{
from[0] = -1;
for (int x : {4, 5, 7}) {
for (int i = 0; i + x <= 1000; i++) {
if (from[i]) from[i + x] = x;
}
}
int n;
ignore = scanf("%d", &n);
if (n <= 2) {
printf("-1\n");
return 0;
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
s[i][j] = '.';
}
}
if (n % 3 == 0) {
for (int i = 0; i < n; i += 3) {
s[i][i] = s[i][i + 1] = 'a';
s[i][i + 2] = s[i + 1][i + 2] = 'b';
s[i + 2][i + 2] = s[i + 2][i + 1] = 'c';
s[i + 2][i] = s[i + 1][i] = 'd';
}
for (int i = 0; i < n; i++) {
printf("%s\n", s[i]);
}
return 0;
}
int cur = n;
int i = 0;
while (cur > 0) {
if (from[cur] == 4) {
for (int j = 0; j < 4; j++) {
for (int k = 0; k < 4; k++) {
s[i + j][i + k] = FOUR[j][k];
}
}
}
else if (from[cur] == 5) {
for (int j = 0; j < 5; j++) {
for (int k = 0; k < 5; k++) {
s[i + j][i + k] = FIVE[j][k];
}
}
}
else if (from[cur] == 7) {
for (int j = 0; j < 6; j++) {
for (int k = 0; k < 6; k++) {
s[i + j][i + k] = SIX[j][k];
}
}
s[i][i + 6] = s[i + 1][i + 6] = 'z';
s[i + 2][i + 6] = s[i + 3][i + 6] = 'y';
s[i + 4][i + 6] = s[i + 5][i + 6] = 'x';
s[i + 6][i] = s[i + 6][i + 1] = 'q';
s[i + 6][i + 2] = s[i + 6][i + 3] = 'w';
s[i + 6][i + 4] = s[i + 6][i + 5] = 'e';
}
i += from[cur];
cur -= from[cur];
}
for (int j = 0; j < n; j++) {
printf("%s\n", s[j]);
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Domino Quality |
| User | kristapuciitis |
| Language | C++14 (GCC 5.4.1) |
| Score | 900 |
| Code Size | 1965 Byte |
| Status | AC |
| Exec Time | 3 ms |
| Memory | 2176 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 900 / 900 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-01.txt, 00-sample-02.txt |
| All | 00-sample-01.txt, 00-sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt, 01-47.txt, 01-48.txt, 01-49.txt, 01-50.txt, 01-51.txt, 01-52.txt, 01-53.txt, 01-54.txt, 01-55.txt, 01-56.txt, 01-57.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-01.txt | AC | 1 ms | 256 KiB |
| 00-sample-02.txt | AC | 1 ms | 256 KiB |
| 01-01.txt | AC | 1 ms | 256 KiB |
| 01-02.txt | AC | 1 ms | 256 KiB |
| 01-03.txt | AC | 1 ms | 256 KiB |
| 01-04.txt | AC | 1 ms | 256 KiB |
| 01-05.txt | AC | 1 ms | 256 KiB |
| 01-06.txt | AC | 1 ms | 256 KiB |
| 01-07.txt | AC | 1 ms | 256 KiB |
| 01-08.txt | AC | 1 ms | 256 KiB |
| 01-09.txt | AC | 1 ms | 256 KiB |
| 01-10.txt | AC | 1 ms | 256 KiB |
| 01-11.txt | AC | 1 ms | 256 KiB |
| 01-12.txt | AC | 1 ms | 256 KiB |
| 01-13.txt | AC | 1 ms | 256 KiB |
| 01-14.txt | AC | 1 ms | 256 KiB |
| 01-15.txt | AC | 1 ms | 256 KiB |
| 01-16.txt | AC | 1 ms | 256 KiB |
| 01-17.txt | AC | 1 ms | 256 KiB |
| 01-18.txt | AC | 1 ms | 256 KiB |
| 01-19.txt | AC | 1 ms | 256 KiB |
| 01-20.txt | AC | 1 ms | 512 KiB |
| 01-21.txt | AC | 1 ms | 384 KiB |
| 01-22.txt | AC | 1 ms | 256 KiB |
| 01-23.txt | AC | 1 ms | 640 KiB |
| 01-24.txt | AC | 2 ms | 896 KiB |
| 01-25.txt | AC | 2 ms | 896 KiB |
| 01-26.txt | AC | 2 ms | 896 KiB |
| 01-27.txt | AC | 1 ms | 768 KiB |
| 01-28.txt | AC | 1 ms | 384 KiB |
| 01-29.txt | AC | 1 ms | 640 KiB |
| 01-30.txt | AC | 2 ms | 1280 KiB |
| 01-31.txt | AC | 2 ms | 1408 KiB |
| 01-32.txt | AC | 2 ms | 1152 KiB |
| 01-33.txt | AC | 2 ms | 1408 KiB |
| 01-34.txt | AC | 2 ms | 1280 KiB |
| 01-35.txt | AC | 2 ms | 1664 KiB |
| 01-36.txt | AC | 2 ms | 1664 KiB |
| 01-37.txt | AC | 2 ms | 896 KiB |
| 01-38.txt | AC | 3 ms | 1920 KiB |
| 01-39.txt | AC | 2 ms | 1664 KiB |
| 01-40.txt | AC | 2 ms | 1792 KiB |
| 01-41.txt | AC | 2 ms | 1536 KiB |
| 01-42.txt | AC | 3 ms | 2176 KiB |
| 01-43.txt | AC | 2 ms | 1152 KiB |
| 01-44.txt | AC | 3 ms | 1920 KiB |
| 01-45.txt | AC | 3 ms | 2176 KiB |
| 01-46.txt | AC | 3 ms | 2176 KiB |
| 01-47.txt | AC | 3 ms | 2176 KiB |
| 01-48.txt | AC | 3 ms | 2176 KiB |
| 01-49.txt | AC | 3 ms | 2176 KiB |
| 01-50.txt | AC | 3 ms | 2176 KiB |
| 01-51.txt | AC | 3 ms | 2176 KiB |
| 01-52.txt | AC | 3 ms | 2176 KiB |
| 01-53.txt | AC | 3 ms | 2176 KiB |
| 01-54.txt | AC | 3 ms | 2176 KiB |
| 01-55.txt | AC | 3 ms | 2176 KiB |
| 01-56.txt | AC | 3 ms | 2176 KiB |
| 01-57.txt | AC | 3 ms | 2176 KiB |