제출 #1133846

#제출 시각아이디문제언어결과실행 시간메모리
1133846sidripperTracks in the Snow (BOI13_tracks)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>

using namespace std;


void dfs(int row, int col, int H, int W, vector<vector<int>>* grid, set* visited, int* rabbit, int* fox) {

	if (row < 0 || col < 0 || col >= W || row >= H ||  grid[row][col] == '.' || *visited.find({row, col}) != visited.end()) {
		return;
	}

	*visited.insert({row, col})
	if (grid[row][col] == 'R') {
		*rabbit = 1;
	}
	if (grid[row][col] == 'F') {
		*fox = 1;
	}
	dfs(row+1, col);
	dfs(row-1, col);
	dfs(row, col+1);
	dfs(row, col-1);

}

int main () {


	int H, W;
	cin >> H >> W;
	vector< vector<int> > grid;
	int val;
	for (int i=0; i<H; i++) {
		for (int j=0; j<W; j++) {
			cin >> val;
			grid[i].push_back(val);
		}
	}

	set<pair<int, int>> visited;
	int ans = 0;
	for (int row=0; row<H; row++) {
		for (int col=0; col<W; col++) {

			if (grid[row][col] == '.' || visited.find({row, col}) != visited.end()) {
				continue;
			}
			int rabbit = 0;
			int fox = 0;
			dfs(row, col, H, W, &grid, &visited, &rabbit, &fox);
			ans += rabbit;
			ans += fox;
			

		}
	}
	cout << ans;
	

}

컴파일 시 표준 에러 (stderr) 메시지

tracks.cpp:6:69: error: template placeholder type 'set<...auto...>' must be followed by a simple declarator-id
    6 | void dfs(int row, int col, int H, int W, vector<vector<int>>* grid, set* visited, int* rabbit, int* fox) {
      |                                                                     ^~~
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from tracks.cpp:1:
/usr/include/c++/11/bits/stl_set.h:94:11: note: 'template<class _Key, class _Compare, class _Alloc> class std::set' declared here
   94 |     class set
      |           ^~~
tracks.cpp:6:81: error: expected ')' before ',' token
    6 | void dfs(int row, int col, int H, int W, vector<vector<int>>* grid, set* visited, int* rabbit, int* fox) {
      |         ~                                                                       ^
      |                                                                                 )
tracks.cpp:6:83: error: expected unqualified-id before 'int'
    6 | void dfs(int row, int col, int H, int W, vector<vector<int>>* grid, set* visited, int* rabbit, int* fox) {
      |                                                                                   ^~~