Submission #2385386
Source Code Expand
#include <cstdio> #include <iostream> using namespace std; int x[200][200]; int y[200][200]; int z[200][200]; int map[200][200]; int main(){ int a, b, h, w; cin >> h >> w >> a >> b; for (int i = 0; i < h; i++) { string s; cin >> s; for (int j = 0; j < w; j++) { if (s[j] == '.') map[i][j] = 0; else map[i][j] = 1; } } int cz = 0; for (int i = 0; i < h / 2; i++){ for (int j = 0; j < w / 2; j++) { if (i == h-i-1 || j == w-j-1) continue; z[i][j] = map[i][j] + map[h-i-1][j] + map[h-i-1][w-j-1] + map[i][w-j-1]; if (z[i][j] == 4) { cz++; map[i][j]--; map[h-i-1][j]--; map[h-i-1][w-j-1]--; map[i][w-j-1]--; } } } int co = cz * max(a, b); int dcz = -1; for (int i = 0; i < 200; i++) { for (int j = 0; j < 200; j++) { if (map[i][j] > 0) dcz = 0; } } int cx = 0; int cy = 0; for (int i = 0; i < h; i++) { for (int j = 0; j < w; j++) { x[min(i, h-i-1)][j] += map[i][j]; y[i][min(j, w-j-1)] += map[i][j]; if (x[min(i, h-i-1)][j] == 2) { cx++; x[min(i, h-i-1)][j] -= 2; } if (y[i][min(j, w-j-1)] == 2) { cy++; y[i][min(j, w-j-1)] -= 2; } } } int dx = -1; int dy = -1; for (int i = 0; i < 200; i++) { for (int j = 0; j < 200; j++) { if (x[i][j] > 0) dx = 0; if (y[i][j] > 0) dy = 0; } } //printf("cz: %d, co: %d\n", cz, co); cout << co + max((a+b) * (cz+1+dcz) + a * max((cx + dx), 0), (a+b) * (cz+1+dcz) + b * max((cy + dy), 0)) << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 石 |
User | potoooooooo |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 1663 Byte |
Status | AC |
Exec Time | 3 ms |
Memory | 768 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, sample_01.txt, sample_02.txt, sample_03.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | AC | 3 ms | 768 KB |
02.txt | AC | 3 ms | 768 KB |
03.txt | AC | 3 ms | 768 KB |
04.txt | AC | 3 ms | 768 KB |
05.txt | AC | 3 ms | 768 KB |
06.txt | AC | 3 ms | 768 KB |
07.txt | AC | 3 ms | 768 KB |
08.txt | AC | 3 ms | 768 KB |
09.txt | AC | 3 ms | 768 KB |
10.txt | AC | 3 ms | 768 KB |
11.txt | AC | 3 ms | 768 KB |
12.txt | AC | 3 ms | 768 KB |
13.txt | AC | 3 ms | 768 KB |
14.txt | AC | 3 ms | 768 KB |
15.txt | AC | 3 ms | 768 KB |
16.txt | AC | 3 ms | 768 KB |
17.txt | AC | 3 ms | 768 KB |
18.txt | AC | 3 ms | 768 KB |
19.txt | AC | 3 ms | 768 KB |
20.txt | AC | 3 ms | 768 KB |
21.txt | AC | 3 ms | 768 KB |
22.txt | AC | 3 ms | 768 KB |
23.txt | AC | 3 ms | 640 KB |
24.txt | AC | 3 ms | 768 KB |
25.txt | AC | 2 ms | 512 KB |
26.txt | AC | 3 ms | 640 KB |
27.txt | AC | 3 ms | 768 KB |
28.txt | AC | 3 ms | 768 KB |
29.txt | AC | 3 ms | 640 KB |
30.txt | AC | 3 ms | 768 KB |
31.txt | AC | 2 ms | 512 KB |
32.txt | AC | 3 ms | 768 KB |
33.txt | AC | 3 ms | 640 KB |
34.txt | AC | 3 ms | 640 KB |
sample_01.txt | AC | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |