POJ 1006

1 #include <iostream>
2 using namespace std;
3
4 int main()
5 {
6 int p, e, i, d;
7 int j = 0;
8 while(cin >> p >> e >> i >> d)
9 {
10 if(p == -1 && e == -1 && i == -1 && d == -1)
11 {
12 break;
13 }
14 j++;
15
16 p = p % 23;
17 e = e % 28;
18 i = i % 33;
19
20 int k = 33 - ((d % 33) - i);
21
22 if(k > 33)
23 {
24 k -= 33;
25 }
26
27 while(k <= 21252)
28 {
29 if((k + d - e) % 28 == 0 && (k + d - p) % 23 == 0)
30 {
31 break;
32 }
33 k += 33;
34 }
35
36 cout << "Case " << j << ": the next triple peak occurs in " << k << " days." << endl;
37 }
38
39 }
2 using namespace std;
3
4 int main()
5 {
6 int p, e, i, d;
7 int j = 0;
8 while(cin >> p >> e >> i >> d)
9 {
10 if(p == -1 && e == -1 && i == -1 && d == -1)
11 {
12 break;
13 }
14 j++;
15
16 p = p % 23;
17 e = e % 28;
18 i = i % 33;
19
20 int k = 33 - ((d % 33) - i);
21
22 if(k > 33)
23 {
24 k -= 33;
25 }
26
27 while(k <= 21252)
28 {
29 if((k + d - e) % 28 == 0 && (k + d - p) % 23 == 0)
30 {
31 break;
32 }
33 k += 33;
34 }
35
36 cout << "Case " << j << ": the next triple peak occurs in " << k << " days." << endl;
37 }
38
39 }