제출 #440360

#제출 시각아이디문제언어결과실행 시간메모리
440360VladM이상한 기계 (APIO19_strange_device)C++14
10 / 100
5072 ms524292 KiB
#include <bits/stdc++.h>

using namespace std;

#define DIM 1000007

typedef pair<long long, long long> pll;

long long n, A, B, l[DIM], r[DIM];

set<pll> s;

int main()
{
    cin>>n>>A>>B;
    for(int i=1; i<=n; i++)
    {
        cin>>l[i]>>r[i];
    }
    for(int i=1; i<=n; i++)
    {
        for(long long t=l[i]; t<=r[i]; t++)
        {
            s.insert({(t+t/B)%A, t%B});
            if(B==1)
            {
                if(A%2==0 && s.size()==A/2) break;
                if(A%2==1 && s.size()==A) break;
            }
            if(s.size()==A*B) break;
        }
    }
    cout<<s.size();
    return 0;
}

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

strange_device.cpp: In function 'int main()':
strange_device.cpp:27:38: warning: comparison of integer expressions of different signedness: 'std::set<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
   27 |                 if(A%2==0 && s.size()==A/2) break;
      |                              ~~~~~~~~^~~~~
strange_device.cpp:28:38: warning: comparison of integer expressions of different signedness: 'std::set<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
   28 |                 if(A%2==1 && s.size()==A) break;
      |                              ~~~~~~~~^~~
strange_device.cpp:30:24: warning: comparison of integer expressions of different signedness: 'std::set<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
   30 |             if(s.size()==A*B) break;
      |                ~~~~~~~~^~~~~
#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...