+++ /dev/null
-#include <bits/stdc++.h>
-
-using namespace std;
-
-int M, N;
-vector<int> todo[1000005];
-bool done[1000005];
-
-void dfs(int x) {
- if (done[x]) {
- return;
- }
- if (x == N * M) {
- cout << "yes" << endl;
- exit(0);
- }
- done[x] = 1;
- for (int& t : todo[x]) {
- dfs(t);
- }
-}
-
-int main() {
- cin.tie(0)->sync_with_stdio(0);
- cin >> M >> N;
- for (int i = 1; i <= M; i++) {
- for (int j = 1; j <= N; j++) {
- int x;
- cin >> x;
- todo[i * j].push_back(x);
- }
- }
- dfs(1);
- cout << "no" << endl;
-}
\ No newline at end of file
-from queue import LifoQueue
+from queue import Queue
from math import sqrt
# from functools import lru_cache
for i in range(M):
room.append(tuple(map(int, input().split())))
-q = LifoQueue()
+q = Queue()
q.put((0, 0))