提出 #17978768
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
ll H; cin >> H;
ll W; cin >> W;
ll N; cin >> N;
ll M; cin >> M;
vector<vector<ll>> cells(H + 2, vector<ll>(W + 2, 0));
vector<vector<ll>> lr(H + 2, vector<ll>(W + 2, 0));
vector<vector<ll>> ud(H + 2, vector<ll>(W + 2, 0));
for (ll i = 0; i < N; i++) {
ll A; cin >> A;
ll B; cin >> B;
cells[A][B] = 1;
lr[A][B] = 1;
ud[A][B] = 1;
}
for (ll j = 0; j < M; j++) {
ll C; cin >> C;
ll D; cin >> D;
cells[C][D] = -1;
}
for (ll i = 1; i <= H; i++) {
for (ll j = 1; j <= W; j++) {
if (cells[i][j] == -1) continue;
if (lr[i][j - 1] == 1) lr[i][j] = 1;
if (cells[i][j - 1] == 1) lr[i][j] = 1;
}
for (ll j = W; j >= 1; j--) {
if (cells[i][j] == -1) continue;
if (lr[i][j + 1] == 1) lr[i][j] = 1;
if (cells[i][j + 1] == 1) lr[i][j] = 1;
}
}
for (ll i = 1; i <= W; i++) {
for (ll j = 1; j <= H; j++) {
if (cells[j][i] == -1) continue;
if (ud[j - 1][i] == 1) ud[j][i] = 1;
if (cells[j - 1][i] == 1) ud[j][i] = 1;
}
for (ll j = H; j >= 1; j--) {
if (cells[j][i] == -1) continue;
if (ud[j + 1][i] == 1) ud[j][i] = 1;
if (cells[j + 1][i] == 1) ud[j][i] = 1;
}
}
ll ans = 0;
for (ll i = 1; i <= H; i++) {
for (ll j = 1; j <= W; j++) {
if (lr[i][j] > 0 || ud[i][j] > 0) ans++;
}
}
cout << ans << '\n';
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Akari |
| ユーザ | nakaken88 |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 500 |
| コード長 | 1576 Byte |
| 結果 | AC |
| 実行時間 | 231 ms |
| メモリ | 56252 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 500 / 500 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| All | handmade_00.txt, max_random_00.txt, max_random_01.txt, max_random_02.txt, max_random_03.txt, max_random_04.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, sample_01.txt, sample_02.txt, sample_03.txt, surrounded_00.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| handmade_00.txt | AC | 7 ms | 3576 KiB |
| max_random_00.txt | AC | 209 ms | 56148 KiB |
| max_random_01.txt | AC | 209 ms | 56252 KiB |
| max_random_02.txt | AC | 210 ms | 56112 KiB |
| max_random_03.txt | AC | 208 ms | 56220 KiB |
| max_random_04.txt | AC | 201 ms | 56236 KiB |
| random_00.txt | AC | 231 ms | 56196 KiB |
| random_01.txt | AC | 226 ms | 56220 KiB |
| random_02.txt | AC | 3 ms | 3688 KiB |
| random_03.txt | AC | 4 ms | 3804 KiB |
| random_04.txt | AC | 107 ms | 20260 KiB |
| random_05.txt | AC | 109 ms | 39484 KiB |
| random_06.txt | AC | 113 ms | 29248 KiB |
| random_07.txt | AC | 163 ms | 35324 KiB |
| random_08.txt | AC | 18 ms | 6344 KiB |
| random_09.txt | AC | 138 ms | 24760 KiB |
| sample_01.txt | AC | 2 ms | 3520 KiB |
| sample_02.txt | AC | 2 ms | 3608 KiB |
| sample_03.txt | AC | 2 ms | 3584 KiB |
| surrounded_00.txt | AC | 211 ms | 56240 KiB |