제출 #659133

#제출 시각아이디문제언어결과실행 시간메모리
659133activedeltorre이상한 기계 (APIO19_strange_device)C++14
20 / 100
1682 ms141304 KiB
#include <iostream> #include <algorithm> #include <vector> #include <map> using namespace std; map<long long,long long>norm; vector<pair<long long,long long> >vec[2000005]; bool cmp(pair<long long,long long> a,pair<long long,long long>b) { if(a.first!=b.first) { return a.first<b.first; } return a.second>b.second; } int main() { long long n,i,j,m,k,l,a,b,val1,val2,rest1,rest2,valoare,cnt=0,x,y; cin>>n>>a>>b; for(i=1; i<=n; i++) { cin>>x>>y; val1=x/b; val2=y/b; rest1=x%b; rest2=y%b; if(val1==val2) { valoare=(val1*(b+1))%a; if(norm[valoare]==0) { cnt++; norm[valoare]=cnt; } vec[norm[valoare]].push_back({rest1,rest2}); } else { valoare=(val1*(b+1))%a; if(norm[valoare]==0) { cnt++; norm[valoare]=cnt; } vec[norm[valoare]].push_back({rest1,b-1}); valoare=(val2*(b+1))%a; if(norm[valoare]==0) { cnt++; norm[valoare]=cnt; } vec[norm[valoare]].push_back({0,rest2}); } } long long suma=0,nr,dr,index; for(i=1; i<=cnt; i++) { sort(vec[i].begin(),vec[i].end(),cmp); nr=vec[i].size(); for(j=0; j<nr; j++) { index=j; dr=vec[i][j].second; while(index+1<nr && dr>=vec[i][index+1].first) { dr=max(dr,vec[i][index+1].second); index++; } suma=suma+dr-vec[i][j].first+1; j=index; } } cout<<suma; return 0; }

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

strange_device.cpp: In function 'int main()':
strange_device.cpp:19:21: warning: unused variable 'm' [-Wunused-variable]
   19 |     long long n,i,j,m,k,l,a,b,val1,val2,rest1,rest2,valoare,cnt=0,x,y;
      |                     ^
strange_device.cpp:19:23: warning: unused variable 'k' [-Wunused-variable]
   19 |     long long n,i,j,m,k,l,a,b,val1,val2,rest1,rest2,valoare,cnt=0,x,y;
      |                       ^
strange_device.cpp:19:25: warning: unused variable 'l' [-Wunused-variable]
   19 |     long long n,i,j,m,k,l,a,b,val1,val2,rest1,rest2,valoare,cnt=0,x,y;
      |                         ^
#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...