Submission #1203629

#TimeUsernameProblemLanguageResultExecution timeMemory
1203629vicvicCoin Collecting (JOI19_ho_t4)C++20
100 / 100
104 ms1980 KiB
#include <iostream> #include <vector> #include <algorithm> #include <cstdint> #define int long long using namespace std; const int NMAX=1e5; int n, b[2], v[NMAX+5][2]; int32_t main () { cin >> n; int ret=0; for (int i=1;i<=2*n;i++) { int x, y; cin >> x >> y; int X=clamp (x, 1ll, n); int Y=clamp (y, 1ll, 2ll); ret+=abs (x-X)+abs (y-Y); v[X][Y-1]++; } for (int i=1;i<=n;i++) { b[0]+=v[i][0]-1; b[1]+=v[i][1]-1; for (auto line : {0, 1}) { int dif=min (abs (b[0]), abs (b[1])); if (b[line]>0 && b[line^1]<0) ret+=dif, b[line^1]+=dif, b[line]-=dif; } ret+=abs (b[0])+abs (b[1]); } cout << ret; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...