Submission #4309016
Source Code Expand
#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> Pair; #define MM 1000000000 #define MOD MM+7 #define MAX 10000 #define MAP 51 #define GRAPH 50 int dx[4] = {-1, 0, 1, 0}; int dy[4] = {0, -1, 0, 1}; int n,m; int R,C; char c[MAP][MAP]; int dist[MAP][MAP]; Pair s, g; int bfs(){ for(int i = 0; i < R; i++){ for(int j = 0; j < C; j++){ dist[i][j] = MAX; } } queue<Pair> que; que.push(s.first, s.second); while(que.size()){ Pair p = que.front(); que.pop(); for(int i = 0; i < 4; i++){ int nx = p.first + dx[i]; int ny = p.second + dy[i]; if(dist[nx][ny] == MAX && c[nx][ny] == '.'){ que.push(nx,ny); dist[nx][ny] = dist[p.first][p.second]+1; } } } return dist[g.first][g.second]; } int main(){ scanf("%d %d",&R,&C); scanf("%d %d",&s.first,&s.second); scanf("%d %d",&g.first,&g.second); for(int i = 0; i < R; i++){ for(int j = 0; j < C; j++){ cin >> c[i][j]; } } int ans = bfs(); cout << ans << endl; }
Submission Info
Submission Time | |
---|---|
Task | C - 幅優先探索 |
User | Kant |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1220 Byte |
Status | CE |
Compile Error
./Main.cpp: In function ‘int bfs()’: ./Main.cpp:24:31: error: no matching function for call to ‘std::queue<std::pair<int, int> >::push(int&, int&)’ que.push(s.first, s.second); ^ In file included from /usr/include/c++/5/queue:64:0, from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:85, from ./Main.cpp:1: /usr/include/c++/5/bits/stl_queue.h:215:7: note: candidate: void std::queue<_Tp, _Sequence>::push(const value_type&) [with _Tp = std::pair<int, int>; _Sequence = std::deque<std::pair<int, int>, std::allocator<std::pair<int, int> > >; std::queue<_Tp, _Sequence>::value_type = std::pair<int, int>] push(const value_type& __x) ^ /usr/include/c++/5/bits/stl_queue.h:215:7: note: candidate expects 1 argument, 2 provided /usr/include/c++/5/bits/stl_queue.h:220:7: note: candidate: void std::queue<_Tp, _Sequence>::push(std::queue<_Tp, _Sequence>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::deque<std::pair<int, ...