Problem Statement
- She must use exactly all cherries and all strawberries she has.
- The number of cakes can be arbitrary (i.e., any positive integer).
- Different cakes may contain different amounts of cherries and strawberries.
- Each cake must contain at least one cherry and at least one strawberry.
- A cake will taste bad if the number of cherries and the number of strawberries it contains happen to be coprime. Therefore, the numbers of cherries and strawberries in a cake must never be coprime. (Two positive integers are coprime if their greatest common divisor is 1.)
You are given the
Definition
- Class:
- FoxAndCake2
- Method:
- isPossible
- Parameters:
- int, int
- Returns:
- String
- Method signature:
- String isPossible(int c, int s)
- (be sure your method is public)
Constraints
- c will be between 1 and 1,000,000,000, inclusive.
- s will be between 1 and 1,000,000,000, inclusive.
Examples
74
109
Returns: "Possible"
One possible solution is to bake 3 cakes as follows: A cake with 21 cherries and 14 strawberries. A cake with 20 cherries and 40 strawberries. A cake with 33 cherries and 55 strawberries.
1000000000
1000000000
Returns: "Possible"
Here Ciel can simply make one huge cake with 1000000000 cherries and 1000000000 strawberries.
1
58
Returns: "Impossible"
Ciel only has 1 cherry, so the only option is to bake one cake with 1 cherry and 58 strawberries. However, 1 and 58 are coprime, so this is not a good cake.
5
6
Returns: "Impossible"
3
4
Returns: "Impossible"
2
1
Returns: "Impossible"
835
795
Returns: "Possible"
187576004
5
Returns: "Possible"
1
3553191
Returns: "Impossible"
5410
4715
Returns: "Possible"
6
191562910
Returns: "Possible"
4171730
417
Returns: "Possible"
607023816
96
Returns: "Possible"
2665390
6
Returns: "Possible"
1
2099922
Returns: "Impossible"
1
110
Returns: "Impossible"
483267569
9009
Returns: "Possible"
8387
5
Returns: "Possible"
7993509
1
Returns: "Impossible"
1
75902377
Returns: "Impossible"
85672
66
Returns: "Possible"
7674139
844663
Returns: "Possible"
7798
9596270
Returns: "Possible"
2
583
Returns: "Impossible"
6767097
5
Returns: "Possible"
9614243
2
Returns: "Impossible"
4
2
Returns: "Possible"
347636
543404692
Returns: "Possible"
3197820
91
Returns: "Possible"
1
879189
Returns: "Impossible"
5
3215
Returns: "Possible"
18
8508
Returns: "Possible"
689
356201925
Returns: "Possible"
370387
9197
Returns: "Possible"
90
219
Returns: "Possible"
875435395
3
Returns: "Impossible"
5
6
Returns: "Impossible"
4
921133202
Returns: "Possible"
35499
5
Returns: "Possible"
7036231
252
Returns: "Possible"
713317
2897248
Returns: "Possible"
1673
96
Returns: "Possible"
211500941
78173
Returns: "Possible"
5
6536
Returns: "Possible"
705985
37086629
Returns: "Possible"
789000
6212712
Returns: "Possible"
6
3
Returns: "Possible"
14468
1
Returns: "Impossible"
1
357
Returns: "Impossible"
231
797
Returns: "Possible"
5
2909209
Returns: "Possible"
841986
25
Returns: "Possible"
10
31189
Returns: "Possible"
91530
2
Returns: "Possible"
5
88593
Returns: "Possible"
1
8308868
Returns: "Impossible"
1902881
51333
Returns: "Possible"
51199
9
Returns: "Possible"
6281984
4
Returns: "Possible"
812966
9260899
Returns: "Possible"
3
5
Returns: "Impossible"
8704663
1
Returns: "Impossible"
6
1702793
Returns: "Impossible"
2
547
Returns: "Impossible"
786925
1008619
Returns: "Possible"
52529
2463
Returns: "Possible"
34100
4
Returns: "Possible"
4
6361
Returns: "Impossible"
9
7778
Returns: "Possible"
502137136
17
Returns: "Possible"
3
58
Returns: "Impossible"
2
15409520
Returns: "Possible"
2
2177
Returns: "Impossible"
429
95411356
Returns: "Possible"
72765
331
Returns: "Possible"
418
4
Returns: "Possible"
8
6
Returns: "Possible"
79827
5859275
Returns: "Possible"
48991664
3352323
Returns: "Possible"
51
6412602
Returns: "Possible"
4
85
Returns: "Impossible"
186716
4
Returns: "Possible"
8654312
2
Returns: "Possible"
132002
1719
Returns: "Possible"
9972799
189638690
Returns: "Possible"
561543
2
Returns: "Impossible"
711041
1531
Returns: "Possible"
33081
1
Returns: "Impossible"
4
165718
Returns: "Possible"
5
212
Returns: "Possible"
8785
6
Returns: "Impossible"
687081
3154294
Returns: "Possible"
2
4
Returns: "Possible"
1
24801
Returns: "Impossible"
4
45984896
Returns: "Possible"
6
821854761
Returns: "Possible"
40160964
262550835
Returns: "Possible"
2
41165
Returns: "Impossible"
6
40
Returns: "Possible"
5057
4
Returns: "Impossible"
12240
4
Returns: "Possible"
816
36569002
Returns: "Possible"
42801026
40269175
Returns: "Possible"
171
6
Returns: "Possible"
46090
76014
Returns: "Possible"
968460795
41
Returns: "Possible"
432
14
Returns: "Possible"
5
146178
Returns: "Possible"
89
35
Returns: "Possible"
808690
3
Returns: "Impossible"
18602733
218968
Returns: "Possible"
98
299224376
Returns: "Possible"
5
1405
Returns: "Possible"
459
852
Returns: "Possible"
174248
7
Returns: "Possible"
1228509
92180
Returns: "Possible"
125
64528
Returns: "Possible"
379056535
4612741
Returns: "Possible"
13634
834733767
Returns: "Possible"
71950972
28
Returns: "Possible"
96488
5
Returns: "Possible"
72671010
62633721
Returns: "Possible"
60546325
654457413
Returns: "Possible"
657490901
141
Returns: "Possible"
2
493960
Returns: "Possible"
1
974135
Returns: "Impossible"
2247347
9370
Returns: "Possible"
5
595
Returns: "Possible"
16161364
38012
Returns: "Possible"
7183
3
Returns: "Impossible"
1
340194
Returns: "Impossible"
42
4
Returns: "Possible"
3
557721
Returns: "Possible"
4891
9740
Returns: "Possible"
380936
349
Returns: "Possible"
4609
6
Returns: "Impossible"
3
4
Returns: "Impossible"
4672
50246534
Returns: "Possible"
1
100
Returns: "Impossible"
66490
4
Returns: "Possible"
4
1
Returns: "Impossible"
6
93722
Returns: "Possible"
74913
15
Returns: "Possible"
4
84690135
Returns: "Impossible"
5
77098445
Returns: "Possible"
280
86368
Returns: "Possible"
5
11049
Returns: "Possible"
4769579
4
Returns: "Impossible"
675854114
3
Returns: "Impossible"
796818
9966
Returns: "Possible"
1
385403
Returns: "Impossible"
35626752
5
Returns: "Possible"
3564
471788
Returns: "Possible"
779436776
1
Returns: "Impossible"
470666
2283201
Returns: "Possible"
1
1
Returns: "Impossible"
1
2
Returns: "Impossible"
1
3
Returns: "Impossible"
1
4
Returns: "Impossible"
1
5
Returns: "Impossible"
1
6
Returns: "Impossible"
1
7
Returns: "Impossible"
2
1
Returns: "Impossible"
2
2
Returns: "Possible"
2
3
Returns: "Impossible"
2
4
Returns: "Possible"
2
5
Returns: "Impossible"
2
6
Returns: "Possible"
2
7
Returns: "Impossible"
3
1
Returns: "Impossible"
3
2
Returns: "Impossible"
3
3
Returns: "Possible"
3
4
Returns: "Impossible"
3
5
Returns: "Impossible"
3
6
Returns: "Possible"
3
7
Returns: "Impossible"
4
1
Returns: "Impossible"
4
2
Returns: "Possible"
4
3
Returns: "Impossible"
4
4
Returns: "Possible"
4
5
Returns: "Impossible"
4
6
Returns: "Possible"
4
7
Returns: "Impossible"
5
1
Returns: "Impossible"
5
2
Returns: "Impossible"
5
3
Returns: "Impossible"
5
4
Returns: "Impossible"
5
5
Returns: "Possible"
5
6
Returns: "Impossible"
5
7
Returns: "Possible"
6
1
Returns: "Impossible"
6
2
Returns: "Possible"
6
3
Returns: "Possible"
6
4
Returns: "Possible"
6
5
Returns: "Impossible"
6
6
Returns: "Possible"
6
7
Returns: "Impossible"
7
1
Returns: "Impossible"
7
2
Returns: "Impossible"
7
3
Returns: "Impossible"
7
4
Returns: "Impossible"
7
5
Returns: "Possible"
7
6
Returns: "Impossible"
7
7
Returns: "Possible"
100
101
Returns: "Possible"
7
18
Returns: "Possible"
1000000000
999999999
Returns: "Possible"
7
8
Returns: "Possible"
3
9
Returns: "Possible"
5
11
Returns: "Possible"
6
125
Returns: "Impossible"
6
11
Returns: "Impossible"
7
1000000000
Returns: "Possible"
6
9
Returns: "Possible"
7
9
Returns: "Possible"
8
7
Returns: "Possible"
11
6
Returns: "Impossible"
6
6000001
Returns: "Impossible"
8
3
Returns: "Impossible"
10
11
Returns: "Possible"
5
8
Returns: "Possible"
3
11
Returns: "Impossible"
6
999999997
Returns: "Impossible"
2
1000007
Returns: "Impossible"
2
999
Returns: "Impossible"
3
500
Returns: "Impossible"
81
4
Returns: "Impossible"
9
49
Returns: "Possible"
900000001
6
Returns: "Impossible"
1000
1001
Returns: "Possible"
7
24
Returns: "Possible"
5
12
Returns: "Possible"
6
6000002
Returns: "Possible"
8
9
Returns: "Possible"
2
600000003
Returns: "Impossible"
6
8
Returns: "Possible"
6
661
Returns: "Impossible"
5
9
Returns: "Possible"
7
10
Returns: "Possible"
7
12
Returns: "Possible"
6
600000005
Returns: "Impossible"
2
9999
Returns: "Impossible"
4
1000000000
Returns: "Possible"
31
74
Returns: "Possible"
9
10
Returns: "Possible"
9
6
Returns: "Possible"
6
999999999
Returns: "Possible"
3
999999997
Returns: "Impossible"
3
1000000000
Returns: "Impossible"
999999989
6
Returns: "Impossible"
21
5
Returns: "Possible"
99
6
Returns: "Possible"