Submission #568307

#TimeUsernameProblemLanguageResultExecution timeMemory
568307BaytoroStrange Device (APIO19_strange_device)C++17
40 / 100
726 ms62956 KiB
#include <bits/stdc++.h> using namespace std; #define Baytoro_Mayrambekov void solve() #define ios ios::sync_with_stdio(false); cin.tie(NULL); #define pb push_back #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define fr first #define sc second #define int long long #define endl '\n' const int INF=1e9; void fopn(string name){ freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout); } int binpow(int a,int n){ if(n==0) return 1; if(n%2==1) return binpow(a, n-1)*a; else{ int b=binpow(a, n/2); return b*b; } } int a,b,c,n,m,i,j,k,x,y,cnt=0,sum=0,res=0; Baytoro_Mayrambekov{ cin>>n>>a>>b; int mx=a/(__gcd(a,b+1)); if(mx>INF) mx=INF; else mx*=b; bool check=1; set<pair<int,int>> st; for(i=0;i<n;i++){ int l,r; cin>>l>>r; if(r-l+1>=mx && check){ cout<<mx<<endl; check=0; } if(!check) continue; l%=mx; r%=mx; if(l<=r){ st.insert({l,r}); } else{ st.insert({l,mx-1}); st.insert({0,r}); } } if(!check){ return; } res=0; int x=-1; for(auto it: st){ if(x<it.fr) res+=it.sc-it.fr+1; else if(x<it.sc) res+=it.sc-x; x=max(x,it.sc); } cout<<res<<endl; } main(){ ios; int T=1; //cin>>T; while(T--){ solve(); } }

Compilation message (stderr)

strange_device.cpp:70:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   70 | main(){
      | ^~~~
strange_device.cpp: In function 'void fopn(std::string)':
strange_device.cpp:14:9: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |  freopen((name+".in").c_str(),"r",stdin);
      |  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
strange_device.cpp:15:9: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |  freopen((name+".out").c_str(),"w",stdout);
      |  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...