제출 #540605

#제출 시각아이디문제언어결과실행 시간메모리
540605krit3379이상한 기계 (APIO19_strange_device)C++14
100 / 100
529 ms53324 KiB
#include<bits/stdc++.h> using namespace std; #define N 1000005 long long a,b,g,rb,l,r,ll,rr,flag,ans; vector<pair<long long,long long>> p; int main(){ int n,i; scanf("%d %lld %lld",&n,&a,&b); g=__gcd(a,b+1); r=a/g; if(1e18/r>=b)rb=r*b; else rb=1e18+1; for(i=1;i<=n;i++){ scanf("%lld %lld",&l,&r); if(r-l+1>=rb)flag=true; l%=rb; r%=rb; if(l<=r)p.push_back({l,r}); else p.push_back({l,rb-1}),p.push_back({0,r}); } if(flag){printf("%lld",rb);return 0;} sort(p.begin(),p.end()); ll=-1; rr=-2; for(auto [l,r]:p){ if(l<=rr)rr=max(rr,r); else{ ans+=rr-ll+1; ll=l,rr=r; } } ans+=rr-ll+1; printf("%lld",ans); return 0; }

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

strange_device.cpp: In function 'int main()':
strange_device.cpp:27:14: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   27 |     for(auto [l,r]:p){
      |              ^
strange_device.cpp:10:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   10 |     scanf("%d %lld %lld",&n,&a,&b);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
strange_device.cpp:16:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |         scanf("%lld %lld",&l,&r);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~
#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...