CSES - UKIEPC 2017 - Results
Submission details
Task:Alien Sunset
Sender:KnowYourArchitecture
Submission time:2017-10-31 19:26:58 +0200
Language:C++
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.04 sdetails
#2ACCEPTED0.05 sdetails
#3ACCEPTED0.04 sdetails
#4ACCEPTED0.03 sdetails
#50.03 sdetails
#6ACCEPTED0.07 sdetails
#70.04 sdetails
#80.05 sdetails
#90.04 sdetails
#100.04 sdetails
#11ACCEPTED0.04 sdetails
#120.04 sdetails
#130.04 sdetails
#14ACCEPTED0.04 sdetails
#15ACCEPTED0.04 sdetails
#16ACCEPTED0.03 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:17:76: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
       if((ct<=r[i]&&t[i]>=r[i]) || (ct>=t[i]&&r[i]<=t[i]) || ct%h[i]<=r[i] && ct%h[i]>=t[i]) {
                                                                            ^

Code

#include <bits/stdc++.h>
using namespace std;

int h[21], r[21], t[21];

int main() {
  int n;
  cin >> n;
  int ld = 0;
  for(int i=0;i<n;i++) {
    cin >> h[i] >> r[i] >> t[i];
    ld = max(ld, h[i]);
  }
  for(int ct=0;ct<ld*1825;ct++) {
    int foo=0;
    for(int i=0;i<n;i++) {
      if((ct<=r[i]&&t[i]>=r[i]) || (ct>=t[i]&&r[i]<=t[i]) || ct%h[i]<=r[i] && ct%h[i]>=t[i]) {
        //cout << "at t="<<ct<<" planet " << i << " is in darkness" << endl;
        foo++;
      } else {
        //cout << "at t="<<ct<<" planet " << i << " is in daytime" << endl;
      }
    }
    if(foo == n) {
      cout << ct << endl;
      return 0;
    }
  }
  cout << "impossible" << endl;
  return 0;
}

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:

input
15
27 18 8
58 8 11
13 0 3
73 42 25
...

correct output
33033

user output
3978

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:

input
15
81 69 14
3 1 2
53 4 36
8 0 5
...

correct output
40534

user output
384

Test 8

Verdict:

input
16
40 28 26
98 50 49
6 3 0
61 50 41
...

correct output
impossible

user output
4068

Test 9

Verdict:

input
16
92 37 56
89 6 59
100 76 89
40 11 6
...

correct output
impossible

user output
450

Test 10

Verdict:

input
16
66 63 24
76 17 69
51 27 10
65 37 28
...

correct output
3799

user output
229

Test 11

Verdict: ACCEPTED

input
2
46 11 3
96 56 80

correct output
3

user output
3

Test 12

Verdict:

input
15
76 3 30
79 44 14
85 5 6
53 28 2
...

correct output
595

user output
172

Test 13

Verdict:

input
14
35 27 34
96 2 37
78 19 17
61 27 7
...

correct output
impossible

user output
877

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