Submission #17182404
Source Code Expand
#include <bits/stdc++.h>
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
using namespace std;
void quit(){
cout << "No" << endl;
exit(0);
}
int main(void){
int N;
cin >> N;
vector<int> A(N);
vector<int> B(N);
vector<int> C(N);
vector<bool>input(2*N, false);
vector<int>candidate(0);
rep(i, N){
cin >> A.at(i) >> B.at(i);
if(A.at(i)>0 and B.at(i)>0 and B.at(i)<=A.at(i))
quit();
if(A.at(i)>0){
if(input.at(A.at(i)-1))
quit();
else
input.at(A.at(i)-1) = true;
}
if(B.at(i)>0){
if(input.at(B.at(i)-1))
quit();
else
input.at(B.at(i)-1) = true;
}
}
rep(i, 2*N){
if(! input.at(i))
candidate.push_back(i+1);
}
do{
continue;
vector<int> A_cand = A;
vector<int> B_cand = B;
auto cand_itr = candidate.begin();
rep(i, N){
if(A_cand.at(i)<0){
A_cand.at(i) = *cand_itr;
++cand_itr;
}
if(B_cand.at(i)<0){
B_cand.at(i) = *cand_itr;
++cand_itr;
}
C.at(i) = B_cand.at(i) - A_cand.at(i);
}
bool check{true};
rep(i, N-1){
if(C.at(i)<=0){
check = false;
break;
}
for(int j{i+1}; j<N; ++j){
if(C.at(j)<=0){
check = false;
break;
}
if(A.at(j) > A.at(i) and A.at(j) < B.at(i) and C.at(i) != C.at(j)){
check = false;
break;
}
}
if(!check)
break;
}
if(check){
cout << "Yes" << endl;
return 0;
}
}while(next_permutation(candidate.begin(), candidate.end()));
quit();
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Fair Elevator |
| User | papino |
| Language | C++ (GCC 9.2.1) |
| Score | 0 |
| Code Size | 2003 Byte |
| Status | WA |
| Exec Time | 2205 ms |
| Memory | 3536 KiB |
Judge Result
| Set Name | Sample | All | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 600 | ||||||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | s1.txt, s2.txt, s3.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, 41.txt, 42.txt, 43.txt, s1.txt, s2.txt, s3.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01.txt | WA | 8 ms | 3520 KiB |
| 02.txt | WA | 1 ms | 3388 KiB |
| 03.txt | WA | 2 ms | 3372 KiB |
| 04.txt | TLE | 2205 ms | 3272 KiB |
| 05.txt | TLE | 2205 ms | 3144 KiB |
| 06.txt | TLE | 2205 ms | 3100 KiB |
| 07.txt | TLE | 2205 ms | 3100 KiB |
| 08.txt | TLE | 2205 ms | 3344 KiB |
| 09.txt | TLE | 2205 ms | 3116 KiB |
| 10.txt | TLE | 2205 ms | 3336 KiB |
| 11.txt | TLE | 2205 ms | 3156 KiB |
| 12.txt | TLE | 2205 ms | 3136 KiB |
| 13.txt | TLE | 2205 ms | 3052 KiB |
| 14.txt | TLE | 2205 ms | 3060 KiB |
| 15.txt | TLE | 2205 ms | 3140 KiB |
| 16.txt | TLE | 2205 ms | 3096 KiB |
| 17.txt | TLE | 2205 ms | 3340 KiB |
| 18.txt | TLE | 2205 ms | 3148 KiB |
| 19.txt | TLE | 2205 ms | 3232 KiB |
| 20.txt | TLE | 2205 ms | 3056 KiB |
| 21.txt | WA | 6 ms | 3424 KiB |
| 22.txt | WA | 2 ms | 3400 KiB |
| 23.txt | TLE | 2205 ms | 3096 KiB |
| 24.txt | TLE | 2205 ms | 3052 KiB |
| 25.txt | TLE | 2205 ms | 3148 KiB |
| 26.txt | TLE | 2205 ms | 3268 KiB |
| 27.txt | AC | 6 ms | 3408 KiB |
| 28.txt | TLE | 2205 ms | 3064 KiB |
| 29.txt | AC | 8 ms | 3528 KiB |
| 30.txt | AC | 2 ms | 3532 KiB |
| 31.txt | AC | 2 ms | 3340 KiB |
| 32.txt | TLE | 2205 ms | 3100 KiB |
| 33.txt | AC | 8 ms | 3536 KiB |
| 34.txt | AC | 2 ms | 3412 KiB |
| 35.txt | AC | 2 ms | 3536 KiB |
| 36.txt | AC | 2 ms | 3532 KiB |
| 37.txt | AC | 2 ms | 3384 KiB |
| 38.txt | AC | 2 ms | 3336 KiB |
| 39.txt | AC | 1 ms | 3520 KiB |
| 40.txt | TLE | 2205 ms | 3056 KiB |
| 41.txt | AC | 10 ms | 3528 KiB |
| 42.txt | AC | 2 ms | 3376 KiB |
| 43.txt | AC | 2 ms | 3516 KiB |
| s1.txt | WA | 2 ms | 3332 KiB |
| s2.txt | AC | 2 ms | 3392 KiB |
| s3.txt | AC | 2 ms | 3424 KiB |