Submission #681512

#TimeUsernameProblemLanguageResultExecution timeMemory
681512ansgarPalembang Bridges (APIO15_bridge)C++17
0 / 100
1 ms340 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define vi vector<int> #define vvi vector<vi> #define pii pair<int,int> #define vpii vector<pii> #define vvpii vector<vpii> #define vb vector<bool> #define vc vector<char> #define vvc vector<vc> #define vvb vector<vb>z #define si set<int> #define mii map<int,int> const int mod=1e9+7; const int N=2e5+1; const int LN=LLONG_MAX/10; signed main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int k,n; cin>>k>>n; int ans=0; vi P; for(int i=0;i<n;i++){ char e1,e2; int p1,p2; cin>>e1>>p1>>e2>>p2; if(e1==e2){ ans+=abs(p1-p2); } else{ P.push_back(p1); P.push_back(p2); } } int sol=LN; sort(P.begin(),P.end()); vi ub; for(int p=0;p<P.size();p++){ if(p)ub.push_back(P[p]-(P[p]-P[p-1])/2); if(p)ub.push_back(P[p]-(P[p]-P[p-1])/2-1); ub.push_back(P[p]); } if(k==1){ int aft=P.size(); int sum=0; for(int i : P)sum+=i; int p=0; int bef=0; for(int i : ub){ //cout<<cA+cB<<endl; sol=min(sol,sum); while(p<(int)P.size() and P[p]==i){ aft--; bef++; p++; } sum+=bef; sum-=aft; } //cout<<cA+cB<<endl; sol=min(sol,sum); } else{ } if(P.size()==0)sol=0; std::cout<<ans+sol+P.size()/2; }

Compilation message (stderr)

bridge.cpp: In function 'int main()':
bridge.cpp:42:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |     for(int p=0;p<P.size();p++){
      |                 ~^~~~~~~~~
#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...