| Task: | Alien Sunset |
| Sender: | Hannes Ihalainen |
| Submission time: | 2017-10-31 17:18:09 +0200 |
| Language: | C++ |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.04 s | details |
| #2 | ACCEPTED | 0.04 s | details |
| #3 | ACCEPTED | 0.04 s | details |
| #4 | ACCEPTED | 0.05 s | details |
| #5 | ACCEPTED | 0.04 s | details |
| #6 | ACCEPTED | 0.05 s | details |
| #7 | ACCEPTED | 0.04 s | details |
| #8 | ACCEPTED | 0.04 s | details |
| #9 | ACCEPTED | 0.04 s | details |
| #10 | ACCEPTED | 0.04 s | details |
| #11 | ACCEPTED | 0.04 s | details |
| #12 | ACCEPTED | 0.04 s | details |
| #13 | ACCEPTED | 0.05 s | details |
| #14 | ACCEPTED | 0.04 s | details |
| #15 | ACCEPTED | 0.04 s | details |
| #16 | ACCEPTED | 0.04 s | details |
Code
#include <iostream>
using namespace std;
int N;
int H[22222];
int R[22222];
int T[22222];
bool ok(int t){
for (int i=0; i<N; ++i){
int g=t%H[i];
if (R[i]<=T[i]){
if (R[i]<g && g<T[i]) return 0;
}else{
if (g<T[i] || R[i]<g) return 0;
}
}
return 1;
}
int main(){
cin >> N;
int mxh=0;
for (int i=0; i<N; ++i){
cin >> H[i] >> R[i] >> T[i];
mxh=max(mxh, H[i]);
}
for (int i=0; i<mxh*1825; ++i){
if (ok(i)){
cout << i << "\n";
return 0;
}
}
cout << "impossible\n";
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 1 5 1 3 |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 2 7 2 4 9 3 5 |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 12 34 28 0 43 38 0 46 13 0 26 8 0 ... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 1 27 14 24 |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 15 27 18 8 58 8 11 13 0 3 73 42 25 ... |
| correct output |
|---|
| 33033 |
| user output |
|---|
| 33033 |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 20 70 14 37 16 3 15 82 62 31 60 17 51 ... |
| correct output |
|---|
| impossible |
| user output |
|---|
| impossible |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 15 81 69 14 3 1 2 53 4 36 8 0 5 ... |
| correct output |
|---|
| 40534 |
| user output |
|---|
| 40534 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 16 40 28 26 98 50 49 6 3 0 61 50 41 ... |
| correct output |
|---|
| impossible |
| user output |
|---|
| impossible |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 16 92 37 56 89 6 59 100 76 89 40 11 6 ... |
| correct output |
|---|
| impossible |
| user output |
|---|
| impossible |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 16 66 63 24 76 17 69 51 27 10 65 37 28 ... |
| correct output |
|---|
| 3799 |
| user output |
|---|
| 3799 |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 2 46 11 3 96 56 80 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 15 76 3 30 79 44 14 85 5 6 53 28 2 ... |
| correct output |
|---|
| 595 |
| user output |
|---|
| 595 |
Test 13
Verdict: ACCEPTED
| input |
|---|
| 14 35 27 34 96 2 37 78 19 17 61 27 7 ... |
| correct output |
|---|
| impossible |
| user output |
|---|
| impossible |
Test 14
Verdict: ACCEPTED
| input |
|---|
| 11 87 23 11 38 4 5 37 27 22 92 46 53 ... |
| correct output |
|---|
| 112247 |
| user output |
|---|
| 112247 |
Test 15
Verdict: ACCEPTED
| input |
|---|
| 6 27 20 10 91 71 29 82 69 72 28 24 5 ... |
| correct output |
|---|
| 64 |
| user output |
|---|
| 64 |
Test 16
Verdict: ACCEPTED
| input |
|---|
| 1 54 48 25 |
| correct output |
|---|
| 25 |
| user output |
|---|
| 25 |
