Problem Statement
Definition
- Class:
- Chocolate
- Method:
- minSplitNumber
- Parameters:
- int, int, int
- Returns:
- int
- Method signature:
- int minSplitNumber(int width, int height, int nTiles)
- (be sure your method is public)
Constraints
- width will be between 1 and 10^9, inclusive.
- height will be between 1 and 10^9, inclusive.
- nTiles will be between 1 and 10^9, inclusive.
Examples
5
4
12
Returns: 1
You can split the chocolate bar into two rectangular pieces 3 x 4 and 2 x 4 by creating a single vertical break. Only one break is necessary.
12
10
120
Returns: 0
The chocolate bar consists of exactly 120 tiles.
2
2
1
Returns: 2
17
19
111
Returns: -1
10
5
86
Returns: -1
3
1000
591991886
Returns: -1
4
99856
608109
Returns: -1
10
9998244
90148109
Returns: -1
10
1000000000
463372
Returns: 2
600
2
874960160
Returns: -1
1000
1000
658705
Returns: -1
961
100000
992400000
Returns: -1
1000
10000000
195128606
Returns: -1
324
1000000000
816377382
Returns: 2
100000
10
102836
Returns: 2
100000
378
20556018
Returns: 1
99856
100000
272273400
Returns: 2
100000
9998244
426746880
Returns: 2
61740
999950884
941584258
Returns: 2
3704400
9
425297658
Returns: -1
10000000
961
476280000
Returns: 2
3110400
100000
997963316
Returns: -1
10000000
10000000
916034129
Returns: -1
9998244
999950884
940567039
Returns: 2
1000000000
9
979912316
Returns: 2
1000000000
961
978646059
Returns: 2
1000000000
99856
956536183
Returns: 2
226800000
10000000
938071715
Returns: 2
999950884
1000000000
998303693
Returns: 2
282475249
282475249
311169600
Returns: 2
282475249
282475249
282475249
Returns: 1
282475249
282475249
276131207
Returns: 2
282475249
282475249
282475249
Returns: 1
48384000
282475249
947683037
Returns: 2
282475249
282475249
564950498
Returns: 1
282475249
282475249
847425747
Returns: 1
282475249
282475249
564950498
Returns: 1
282475249
282475249
282475249
Returns: 1
282475249
282475249
944389725
Returns: 2
282475249
282475249
564950498
Returns: 1
74680704
112021056
149361408
Returns: 1
149361408
282475249
564950498
Returns: 1
282475249
282475249
847425747
Returns: 1
282475249
282475249
656641603
Returns: -1
282475249
282475249
492705233
Returns: 2
99532800
282475249
99532800
Returns: 1
282475249
282475249
24938842
Returns: 2
282475249
282475249
160030080
Returns: 2
61740000
41489280
635040000
Returns: 2
282475249
60963840
695667047
Returns: 2
282475249
282475249
282475249
Returns: 1
282475249
282475249
917628732
Returns: 2
282475249
65318400
847425747
Returns: 1
282475249
164640000
987840000
Returns: 1
4
3
20
Returns: -1
1
3
53
Returns: -1
14
6
54
Returns: 1
10
18
393
Returns: -1
6
22
280
Returns: -1
12
21
302
Returns: -1
4
11
758
Returns: -1
32
13
1433
Returns: -1
14
41
1805
Returns: -1
6
41
1888
Returns: -1
1000000000
1000000000
1000000000
Returns: 1
1
1000000000
1000000000
Returns: 0
10
100000000
1000000000
Returns: 0
100
10000000
1000000000
Returns: 0
1000000
1000
1000000000
Returns: 0
10000000
100
1000000000
Returns: 0
100000000
10
1000000000
Returns: 0
1000000000
1
1000000000
Returns: 0
100000000
100000000
1000000000
Returns: 1
40000
40000
900060001
Returns: 2
10089
26481
246414661
Returns: 2
4652
2678
10724209
Returns: 2
4970
28477
112380529
Returns: 2
4203
21548
83664487
Returns: 2
12800
26804
318981023
Returns: 2
20915
7509
150865069
Returns: 2
27302
4356
105393667
Returns: 2
30752
12908
363073121
Returns: 2
20176
27507
535291069
Returns: 2
14795
3856
47004557
Returns: 2
193
193
37249
Returns: 0
2092
2093
4355569
Returns: 2
2923
2910
8462281
Returns: 2
30341
30344
920576281
Returns: 1
11450
11454
130484929
Returns: 2
1234567
7654321
844062807
Returns: 2
100000000
3
199999996
Returns: 2
3
100000000
199999996
Returns: 2
65537
65537
131073
Returns: 2
200
1000000000
600
Returns: 1
1000000000
5
705032704
Returns: 2
2
20
25
Returns: -1
4
2
3
Returns: 2
5
5
100
Returns: -1
1000000000
1000000000
50
Returns: 2
1
10
100
Returns: -1
2
3
8
Returns: -1
1000000000
1000000000
1000000000
Returns: 1
945454926
945454926
945454927
Returns: -1
999999999
999999999
900095849
Returns: 2
6
1
12
Returns: -1
2
2
160
Returns: -1
333333
555555
501221087
Returns: -1
5
12
10
Returns: 1
1000000000
1000000000
3
Returns: 2
1000000000
1000000000
5
Returns: 2
2
10
100
Returns: -1
1000000
35000
640261632
Returns: 2
1000000
1000000
1000000000
Returns: 1
189
3
203
Returns: -1
2
999999998
999999999
Returns: -1
1000000000
1000000000
11111117
Returns: 2
10
10
1000
Returns: -1
999999999
999999999
1000000000
Returns: 2
10
20
143
Returns: -1
1000034
1009283
1062
Returns: 2
5
5
30
Returns: -1
5
1
10
Returns: -1
5
4
6
Returns: 2
2
5
15
Returns: -1
1000000000
1000000000
1
Returns: 2
999999901
999999901
999999937
Returns: -1
919387247
929666241
971259251
Returns: -1
2
1
2
Returns: 0
2
100000
10000
Returns: 1
1000000
100000000
276447232
Returns: 2
65536
65536
43
Returns: 2
2
20
39
Returns: -1
10
10
5
Returns: 2
3
5
25
Returns: -1
2
7
7
Returns: 1
65536
65537
65536
Returns: 1
65536
65536
12
Returns: 2
10
10
81
Returns: 2
536870908
536870908
999999999
Returns: 2
1000000000
39171367
78342734
Returns: 1
1000000000
1000000000
100000000
Returns: 2
899999999
899999999
930000017
Returns: -1
4
10
35
Returns: -1
7
7
36
Returns: 2
10
1
20
Returns: -1
999994986
999994986
999994987
Returns: -1
10000
3500000
640261632
Returns: 2
4
4
6
Returns: 2
100000000
100000000
268435456
Returns: 2
9999999
9999997
1000000000
Returns: 2
13
1
13
Returns: 0
3
3
27
Returns: -1
999999999
3
1000000000
Returns: 2
1000000
5000
705032704
Returns: 2
500000000
500000000
888765401
Returns: -1
1000000000
1000000000
999999999
Returns: 2
999999935
999999936
999999937
Returns: -1
3
9
6
Returns: 1
6
9
6
Returns: 1
65537
65536
65536
Returns: 1
31622
31622
999979237
Returns: -1
31622
31622
1000000000
Returns: -1
1000000000
1000000000
232434354
Returns: 2
10000000
10000000
12345
Returns: 2
524288
8228
18874368
Returns: 1
1000000000
5
1000000000
Returns: 1
999999999
3
10
Returns: 2
2
4
10
Returns: -1
12
10
120
Returns: 0
1000000
1000000
10000000
Returns: 1
2
2
8
Returns: -1
999999999
999999999
808348673
Returns: 2
10000000
1000000
4000
Returns: 2
1000000000
50000000
784662528
Returns: 2
3
3
8
Returns: -1
3
17
17
Returns: 1
3
15
26
Returns: 2
1
1
999999997
Returns: -1
1000000000
1000000000
12345452
Returns: 2
22000
999999999
999999999
Returns: 1
1000000000
1000000000
2
Returns: 2
4
2
16
Returns: -1
65536
65552
1048576
Returns: 1
6
19
95
Returns: 1
1
5
5
Returns: 0
1048576
1048577
1048576
Returns: 1
200000
900000
100
Returns: 2
2
8
3
Returns: 2
4
5
5
Returns: 1
3
3
1
Returns: 2
149000
149000
726163520
Returns: 2
1000000000
1000000000
999999929
Returns: 2
31266
250000
1000000000
Returns: 1
131072
131073
131072
Returns: 1
6
5
35
Returns: -1
1
2
1
Returns: 1
999999936
999999936
999999937
Returns: -1
1000000000
1000000000
200
Returns: 2
999999999
777777777
10000001
Returns: 2
1000000000
1000000000
4556
Returns: 2
1048577
1048577
2097153
Returns: 2
93479234
93749237
3242342
Returns: 2
65536
65536
100000
Returns: 2
2
500000000
999999999
Returns: -1
1
1
2
Returns: -1
10
50
20
Returns: 1
4
4
9
Returns: 2
1
1
500
Returns: -1
542288
8228
18874368
Returns: 2
2
2
4
Returns: 0
99
99
999999999
Returns: -1
2
2
2
Returns: 1
500000000
500000000
1000000000
Returns: 1
10
20
12
Returns: 2
999999999
1
1
Returns: 1
65536
65536
6
Returns: 2
900000000
900000000
900001171
Returns: -1
2
20
21
Returns: -1
1000000
1000000
100000000
Returns: 1
10000000
10000000
276447232
Returns: 2
7
41
70
Returns: 1
29
9
238
Returns: -1
1
1
10
Returns: -1
2
2
10
Returns: -1
8
11
90
Returns: -1
10
10
200
Returns: -1
100000000
100
3245200
Returns: 1
536862800
536862800
5
Returns: 2
51000
100000
805032704
Returns: 2
99999998
99999999
999999999
Returns: 2
4
10
10
Returns: 1
200000014
2
100000007
Returns: 2
999999999
2
999999999
Returns: 1
8
8
49
Returns: 2
3
3
4
Returns: 2
1000000000
1000000000
111
Returns: 2
12345678
999999999
999999998
Returns: 2
999999999
999999999
999999998
Returns: 2
7
7
12
Returns: 2
6
8
35
Returns: 2
3
10
20
Returns: 1
1000000000
1000000000
999999997
Returns: 2
6
3
24
Returns: -1
1000000000
1000000000
99999999
Returns: 2
5000000
1000000
658067456
Returns: 2
1000000000
1000000000
10
Returns: 2
999999998
999999998
999999999
Returns: 2