Submission #423292
Source Code Expand
#include <iostream> #include <vector> #include <map> #include <array> using namespace std; #define vi vector<int> #define pii pair<int, int> class Data { private: int m_height; int m_width; pii m_s_pos; pii m_g_pos; vector<vector<char>> m_field; vector<vector<int>> m_reached; public: Data(vector<vector<char>> f, int h, int w, pii s, pii g) : m_field(f), m_height(h), m_width(w), m_s_pos(s), m_g_pos(g) { m_reached.resize(m_height); for (auto& it: m_reached) { it.resize(m_width); } } void dfs(const int cx, const int cy); void solve(); }; void Data::solve() { this->dfs(m_s_pos.first, m_s_pos.second); if (m_reached.at(m_g_pos.second).at(m_g_pos.first)) { cout << "YES" << endl; } else { cout << "NO" << endl; } } void Data::dfs(const int cx, const int cy) { // check if (cx < 0 || cx >= m_width || cy < 0 || cy >= m_height) return; if (m_field.at(cy).at(cx) == '#') return; if (m_reached.at(cy).at(cx)) return; // mark map m_reached.at(cy).at(cx) = true; // dfs const array<int, 4> dx = {0, 0, 1, -1}; const array<int, 4> dy = {1, -1, 0, 0}; for (int i = 0; i < 4; ++i) { int nx = cx + dx.at(i); int ny = cy + dy.at(i); this->dfs(nx, ny); } } int main() { ios::sync_with_stdio(false); // input int h, w; cin >> h >> w; vector<vector<char>> field(h, vector<char>(w)); pii s, g; for (int y = 0; y < h; ++y) { for (int x = 0; x < w; ++x) { cin >> field.at(y).at(x); if (field.at(y).at(x) == 's') { s.first = x; s.second = y; } else if (field.at(y).at(x) == 'g') { g.first = x; g.second = y; } } } Data data(field, h, w, s, g); data.solve(); return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - 深さ優先探索 |
User | ryoyuki |
Language | C++11 (GCC 4.9.2) |
Score | 0 |
Code Size | 2037 Byte |
Status | WA |
Exec Time | 88 ms |
Memory | 16808 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt |
All | 00_min_01.txt, 00_min_02.txt, 00_min_03.txt, 00_min_04.txt, 00_min_05.txt, 00_min_06.txt, 00_min_07.txt, 00_min_08.txt, 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 02_rndhard_00.txt, 02_rndhard_01.txt, 02_rndhard_02.txt, 02_rndhard_03.txt, 02_rndhard_04.txt, 02_rndhard_05.txt, 02_rndhard_06.txt, 02_rndhard_07.txt, 02_rndhard_08.txt, 02_rndhard_09.txt, 02_rndhard_10.txt, 02_rndhard_11.txt, 02_rndhard_12.txt, 02_rndhard_13.txt, 02_rndhard_14.txt, 02_rndhard_15.txt, 02_rndhard_16.txt, 02_rndhard_17.txt, 02_rndhard_18.txt, 02_rndhard_19.txt, 02_rndhard_20.txt, 02_rndhard_21.txt, 02_rndhard_22.txt, 02_rndhard_23.txt, 02_rndhard_24.txt, 02_rndhard_25.txt, 02_rndhard_26.txt, 02_rndhard_27.txt, 02_rndhard_28.txt, 02_rndhard_29.txt, 02_rndhard_30.txt, 02_rndhard_31.txt, 02_rndhard_32.txt, 02_rndhard_33.txt, 02_rndhard_34.txt, 02_rndhard_35.txt, 02_rndhard_36.txt, 02_rndhard_37.txt, 02_rndhard_38.txt, 02_rndhard_39.txt, 03_rndhardsmall_00.txt, 03_rndhardsmall_01.txt, 03_rndhardsmall_02.txt, 03_rndhardsmall_03.txt, 03_rndhardsmall_04.txt, 03_rndhardsmall_05.txt, 03_rndhardsmall_06.txt, 03_rndhardsmall_07.txt, 03_rndhardsmall_08.txt, 03_rndhardsmall_09.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_min_01.txt | WA | 29 ms | 800 KB |
00_min_02.txt | WA | 26 ms | 796 KB |
00_min_03.txt | WA | 27 ms | 932 KB |
00_min_04.txt | WA | 29 ms | 924 KB |
00_min_05.txt | WA | 25 ms | 732 KB |
00_min_06.txt | WA | 26 ms | 796 KB |
00_min_07.txt | WA | 25 ms | 928 KB |
00_min_08.txt | WA | 26 ms | 804 KB |
00_sample_01.txt | WA | 26 ms | 800 KB |
00_sample_02.txt | WA | 28 ms | 744 KB |
00_sample_03.txt | WA | 26 ms | 924 KB |
00_sample_04.txt | WA | 25 ms | 800 KB |
00_sample_05.txt | WA | 25 ms | 928 KB |
01_rnd_00.txt | WA | 37 ms | 2600 KB |
01_rnd_01.txt | WA | 80 ms | 15652 KB |
01_rnd_02.txt | WA | 66 ms | 7968 KB |
01_rnd_03.txt | WA | 82 ms | 16808 KB |
01_rnd_04.txt | WA | 78 ms | 14872 KB |
01_rnd_05.txt | WA | 38 ms | 2584 KB |
01_rnd_06.txt | WA | 59 ms | 6184 KB |
01_rnd_07.txt | WA | 67 ms | 8356 KB |
01_rnd_08.txt | WA | 38 ms | 2592 KB |
01_rnd_09.txt | WA | 38 ms | 2584 KB |
01_rnd_10.txt | WA | 49 ms | 3364 KB |
01_rnd_11.txt | WA | 38 ms | 2588 KB |
01_rnd_12.txt | WA | 74 ms | 12316 KB |
01_rnd_13.txt | WA | 76 ms | 12068 KB |
01_rnd_14.txt | WA | 38 ms | 2592 KB |
01_rnd_15.txt | WA | 56 ms | 5020 KB |
01_rnd_16.txt | WA | 39 ms | 2580 KB |
01_rnd_17.txt | WA | 55 ms | 4132 KB |
01_rnd_18.txt | WA | 38 ms | 2584 KB |
01_rnd_19.txt | WA | 88 ms | 16808 KB |
02_rndhard_00.txt | WA | 38 ms | 2592 KB |
02_rndhard_01.txt | WA | 38 ms | 2600 KB |
02_rndhard_02.txt | WA | 41 ms | 2720 KB |
02_rndhard_03.txt | WA | 41 ms | 2720 KB |
02_rndhard_04.txt | WA | 44 ms | 2588 KB |
02_rndhard_05.txt | WA | 38 ms | 2600 KB |
02_rndhard_06.txt | WA | 38 ms | 2600 KB |
02_rndhard_07.txt | WA | 38 ms | 2592 KB |
02_rndhard_08.txt | WA | 39 ms | 2592 KB |
02_rndhard_09.txt | WA | 40 ms | 2592 KB |
02_rndhard_10.txt | WA | 38 ms | 2584 KB |
02_rndhard_11.txt | WA | 39 ms | 2588 KB |
02_rndhard_12.txt | WA | 38 ms | 2588 KB |
02_rndhard_13.txt | WA | 39 ms | 2532 KB |
02_rndhard_14.txt | WA | 39 ms | 2604 KB |
02_rndhard_15.txt | WA | 39 ms | 2592 KB |
02_rndhard_16.txt | WA | 38 ms | 2596 KB |
02_rndhard_17.txt | WA | 38 ms | 2592 KB |
02_rndhard_18.txt | WA | 38 ms | 2604 KB |
02_rndhard_19.txt | WA | 38 ms | 2596 KB |
02_rndhard_20.txt | WA | 40 ms | 2600 KB |
02_rndhard_21.txt | WA | 38 ms | 2596 KB |
02_rndhard_22.txt | WA | 37 ms | 2596 KB |
02_rndhard_23.txt | WA | 39 ms | 2592 KB |
02_rndhard_24.txt | WA | 39 ms | 2596 KB |
02_rndhard_25.txt | WA | 38 ms | 2592 KB |
02_rndhard_26.txt | WA | 41 ms | 2620 KB |
02_rndhard_27.txt | WA | 38 ms | 2596 KB |
02_rndhard_28.txt | WA | 38 ms | 2592 KB |
02_rndhard_29.txt | WA | 38 ms | 2584 KB |
02_rndhard_30.txt | WA | 37 ms | 2588 KB |
02_rndhard_31.txt | WA | 37 ms | 2588 KB |
02_rndhard_32.txt | WA | 38 ms | 2596 KB |
02_rndhard_33.txt | WA | 37 ms | 2588 KB |
02_rndhard_34.txt | WA | 38 ms | 2600 KB |
02_rndhard_35.txt | WA | 39 ms | 2596 KB |
02_rndhard_36.txt | WA | 37 ms | 2592 KB |
02_rndhard_37.txt | WA | 39 ms | 2600 KB |
02_rndhard_38.txt | WA | 39 ms | 2592 KB |
02_rndhard_39.txt | WA | 38 ms | 2596 KB |
03_rndhardsmall_00.txt | WA | 25 ms | 932 KB |
03_rndhardsmall_01.txt | WA | 25 ms | 924 KB |
03_rndhardsmall_02.txt | WA | 25 ms | 796 KB |
03_rndhardsmall_03.txt | WA | 24 ms | 924 KB |
03_rndhardsmall_04.txt | WA | 25 ms | 924 KB |
03_rndhardsmall_05.txt | WA | 26 ms | 928 KB |
03_rndhardsmall_06.txt | WA | 25 ms | 800 KB |
03_rndhardsmall_07.txt | WA | 26 ms | 924 KB |
03_rndhardsmall_08.txt | WA | 26 ms | 792 KB |
03_rndhardsmall_09.txt | WA | 23 ms | 924 KB |