Submission #1136690

#TimeUsernameProblemLanguageResultExecution timeMemory
1136690Richard_DyinmanTracks in the Snow (BOI13_tracks)C++20
0 / 100
2 ms328 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define ld long double #define all(x) x.begin(), x.end() #define file \ freopen("guard.in", "r", stdin);\ freopen("guard.out", "w", stdout) #define OJudge(in,out) \ freopen(in, "r", stdin);\ freopen(out, "w", stdout) #define FIn \ cin.tie(0); \ cout.tie(0); \ ios_base::sync_with_stdio(false) const string IN = "input.txt"; const string OUT = "output.txt"; int tc; ll n,m,a,b,c,k; char arr[4100][4100]; int fin[4100][4100]; int cnt = 0; void dfs(int x, int y , char cur){ if(!fin[x][y] && arr[x][y] != cur) return; if(fin[x][y] == cnt) return; fin[x][y] = cnt; if(x > 0){ dfs(x - 1, y , cur); } if(x < n - 1){ dfs(x + 1, y , cur); } if(y > 0){ dfs(x , y - 1 , cur); } if(y < m-1){ dfs(x , y +1, cur); } } void solve() { cin>>n>>m; for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++){ cin>>arr[i][j]; fin[i][j] = 0; } } for(int i = 0; i<n; i++){ for(int j = 0; j < m; j++){ if(arr[i][j] != '.' && !fin[i][j]){ cnt++; dfs(i, j, arr[i][j]); } } } cout<<cnt; } int main() { FIn; //file; #ifndef ONLINE_JUDGE OJudge(IN.c_str(),OUT.c_str()); #endif bool test = 0; if (test) cin>>tc; else tc = 1; for (int i = 1; i<=tc; i++){ solve(); } }

Compilation message (stderr)

tracks.cpp: In function 'int main()':
tracks.cpp:12:14: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   12 |       freopen(in, "r", stdin);\
      |       ~~~~~~~^~~~~~~~~~~~~~~~
tracks.cpp:72:5: note: in expansion of macro 'OJudge'
   72 |     OJudge(IN.c_str(),OUT.c_str());
      |     ^~~~~~
tracks.cpp:13:14: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |       freopen(out, "w", stdout)
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~
tracks.cpp:72:5: note: in expansion of macro 'OJudge'
   72 |     OJudge(IN.c_str(),OUT.c_str());
      |     ^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...