Submission #1230995

#TimeUsernameProblemLanguageResultExecution timeMemory
1230995PVM_pvmNaval battle (CEOI24_battle)C++20
12 / 100
3095 ms3368 KiB
#include<bits/stdc++.h> using namespace std; #define MAXN 200'007 struct ship { int x,y; int tp; ///N 0, E 1, S 2, W 3 int ind; } sh[MAXN]; int n; int kg[MAXN]; int main() { cin>>n; for (int q=1;q<=n;q++) { sh[q].ind=q; cin>>sh[q].x>>sh[q].y; char c; cin>>c; if (c=='N') sh[q].tp=0; else if (c=='E') sh[q].tp=1; else if (c=='S') sh[q].tp=2; else if (c=='W') sh[q].tp=3; } for (int vr=1;vr<=120;vr++) { for (int q=1;q<=n;q++) { if (kg[q]!=0) continue; if (sh[q].tp==0) { sh[q].y--; } else if (sh[q].tp==1) { sh[q].x++; } else if (sh[q].tp==2) { sh[q].y++; } else if (sh[q].tp==3) { sh[q].x--; } } vector<int> bl; for (int q=1;q<=n;q++) { if (kg[q]!=0) continue; for (int w=1;w<=n;w++) { if (kg[w]!=0) continue; if (q==w) continue; if (sh[q].x==sh[w].x && sh[q].y==sh[w].y) { bl.push_back(q); bl.push_back(w); } } } //cout<<bl.size()<<"\n"; for (int q=0;q<bl.size();q++) kg[ bl[q] ]=vr; } for (int q=1;q<=n;q++) { if (kg[q]==0) cout<<q<<"\n"; } } /* 6 4 0 W 0 2 E 2 2 S 4 4 N 6 6 W 4 2 W */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...