제출 #1287866

#제출 시각아이디문제언어결과실행 시간메모리
1287866quan606303Tracks in the Snow (BOI13_tracks)C++20
0 / 100
735 ms1114112 KiB
/* * @Author: RMQuan * @Date: 2025-11-05 15:21:17 * @Last Modified by: RMQuan * @Last Modified time: 2025-11-05 15:23:47 */ /*idea : */ #include <bits/stdc++.h> bool M1; #define int long long #define ll long long #define INTMAX INT_MAX #define INTMIN INT_MIN #define LONGMAX LLONG_MAX #define LONGMIN LLONG_MIN #define fi first #define se second #define memfull(a,b) memset(a,b,sizeof(a)); #define endl '\n' #define TASK "TEST" #define file() if (fopen(TASK".inp","r")){freopen(TASK".inp","r",stdin); freopen(TASK".out","w",stdout);} using namespace std; const int MOD=1e9+7; const int maxn=4005; const int dx[4]={0,0,1,-1}; const int dy[4]={1,-1,0,0}; int a[maxn][maxn],n,m; bool vst[maxn][maxn]; int cnt1=0,cnt2=0; bool check(int x,int y) { return x>=1&&y>=1&&x<=n&&y<=m; } void dfs(int x,int y) { vst[x][y]=true; if (a[x][y]==1)cnt1++; else if (a[x][y]==2)cnt2++; for (int k=0;k<4;k++) { int u=x+dx[k]; int v=y+dy[k]; if (check(u,v)&&a[u][v]&&!vst[u][v])dfs(u,v); } } int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); file(); cin>>n>>m; for (int i=1;i<=n;i++) { for (int j=1;j<=m;j++) { char x; cin>>x; if (x=='F')a[i][j]=1; else if (x=='R')a[i][j]=2; else a[i][j]=0; } } int ans=0; for (int i=1;i<=n;i++) { for (int j=1;j<=m;j++) { if (a[i][j]&&!vst[i][j]) { cnt1=0; cnt2=0; dfs(i,j); ans+=(cnt1>0)+(cnt2>0); } } } cout<<ans; bool M2; cerr<<"-------------------------------------------------"<<endl; cerr<<"Time : "<<clock()<<" ms"<<endl; cerr<<"Memory : "<<abs(&M2-&M1)/1024/1024<<" MB"<<endl; cerr<<"-------------------------------------------------"<<endl; return 0; }

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

tracks.cpp: In function 'int32_t main()':
tracks.cpp:25:50: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 | #define file() if (fopen(TASK".inp","r")){freopen(TASK".inp","r",stdin); freopen(TASK".out","w",stdout);}
      |                                           ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
tracks.cpp:55:5: note: in expansion of macro 'file'
   55 |     file();
      |     ^~~~
tracks.cpp:25:81: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 | #define file() if (fopen(TASK".inp","r")){freopen(TASK".inp","r",stdin); freopen(TASK".out","w",stdout);}
      |                                                                          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
tracks.cpp:55:5: note: in expansion of macro 'file'
   55 |     file();
      |     ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...