Submission #782446

#TimeUsernameProblemLanguageResultExecution timeMemory
782446makanhuliaStrange Device (APIO19_strange_device)C++17
5 / 100
437 ms33212 KiB
#include <bits/stdc++.h>
#define LL long long 
using namespace std;
int main()
{
  LL n,a,b;
  scanf("%lld %lld %lld",&n,&a,&b);
  LL t=b*(a/__gcd(b+1,a));
  vector<pair<LL,LL>>v;
  for(LL a=1;a<=n;a++)
  {
    LL l,r;
    scanf("%lld %lld",&l,&r);
    l%=t ,r%=t;
    if(l>=r)
    {
      v.push_back(make_pair(l,t-1));
      v.push_back(make_pair(0,r));
    }
    else v.push_back(make_pair(l,r));
  }
  sort(v.begin(),v.end());
  LL kanan=0,tot=0,kiri=0;
  for(pair<LL,LL>x:v)
  {
    if(x.second>=kanan && (x.first<=kanan ))
    {
      kanan=x.second;
    }
    else if(kanan<x.first)
    {
      tot+=(kanan-kiri+1);
      kiri=x.first,kanan=x.second;
    }
  }
  tot+=(kanan-kiri+1);
  cout<<tot<<endl;
}

Compilation message (stderr)

strange_device.cpp: In function 'int main()':
strange_device.cpp:7:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 |   scanf("%lld %lld %lld",&n,&a,&b);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
strange_device.cpp:13:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |     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...