Problem Statement
A string is called colorful if it contains only digits and the product value of each of its nonempty contiguous substrings is distinct.
For example, the string "263" has six substrings: "2", "6", "3", "26", "63" and "263". The product values of these substrings are: 2, 6, 3, 2 * 6 = 12, 6 * 3 = 18 and 2 * 6 * 3 = 36, respectively. Since all six product values are distinct, "263" is colorful.
On the other hand, "236" is not colorful because two of its substrings, "6" and "23", have the same product value (6 = 2 * 3).
Return the k-th (1-based) lexicographically smallest colorful string of length n. If there are less than k colorful strings of length n, return an empty
Definition
- Class:
- ColorfulStrings
- Method:
- getKth
- Parameters:
- int, int
- Returns:
- String
- Method signature:
- String getKth(int n, int k)
- (be sure your method is public)
Notes
- The lexicographically smaller of two strings is the one that has the smaller character ('0' < '1' < ... < '9') at the first position where they differ.
Constraints
- n will be between 1 and 50, inclusive.
- k will be between 1 and 1,000,000,000, inclusive.
Examples
3
4
Returns: "238"
The first four smallest colorful strings of length 3 are "234", "235", "237" and "238".
4
2000
Returns: ""
The number of colorful strings of length 4 is less than 2000.
5
1
Returns: "23457"
2
22
Returns: "52"
6
464
Returns: "257936"
1
1
Returns: "0"
1
3
Returns: "2"
1
4
Returns: "3"
1
5
Returns: "4"
1
6
Returns: "5"
1
8
Returns: "7"
1
10
Returns: "9"
1
11
Returns: ""
1
430818442
Returns: ""
1
1000000000
Returns: ""
2
1
Returns: "23"
2
19
Returns: "47"
2
28
Returns: "59"
2
39
Returns: "75"
2
41
Returns: "78"
2
42
Returns: "79"
2
45
Returns: "84"
2
50
Returns: "92"
2
56
Returns: "98"
2
57
Returns: ""
2
624459040
Returns: ""
3
1
Returns: "234"
3
37
Returns: "295"
3
94
Returns: "453"
3
191
Returns: "678"
3
197
Returns: "687"
3
202
Returns: "695"
3
302
Returns: "946"
3
303
Returns: "947"
3
328
Returns: "987"
3
329
Returns: ""
3
635838948
Returns: ""
4
1
Returns: "2345"
4
607
Returns: "5362"
4
938
Returns: "6948"
4
1073
Returns: "7629"
4
1251
Returns: "8576"
4
1372
Returns: "9345"
4
1389
Returns: "9376"
4
1478
Returns: "9682"
4
1540
Returns: "9876"
4
1541
Returns: ""
4
387574968
Returns: ""
5
681
Returns: "29873"
5
1234
Returns: "38794"
5
1602
Returns: "45862"
5
1821
Returns: "47928"
5
3273
Returns: "68472"
5
3865
Returns: "76349"
5
5444
Returns: "98362"
5
5514
Returns: "98765"
5
5515
Returns: ""
5
449453393
Returns: ""
6
1
Returns: "234578"
6
541
Returns: "259378"
6
1130
Returns: "278596"
6
4797
Returns: "479635"
6
8072
Returns: "659873"
6
10206
Returns: "785346"
6
12337
Returns: "927486"
6
12733
Returns: "943782"
6
13956
Returns: "987654"
6
13957
Returns: ""
6
957095281
Returns: ""
7
1
Returns: "2345789"
7
3416
Returns: "3469728"
7
4324
Returns: "3647958"
7
6683
Returns: "4528673"
7
10799
Returns: "5769283"
7
14773
Returns: "7384529"
7
15287
Returns: "7498356"
7
16225
Returns: "7894325"
7
21596
Returns: "9876543"
7
21597
Returns: ""
7
451435243
Returns: ""
8
1
Returns: "25346879"
8
875
Returns: "26893745"
8
4659
Returns: "39648725"
8
10578
Returns: "73964582"
8
10698
Returns: "74652893"
8
10897
Returns: "75693482"
8
11643
Returns: "82934657"
8
12873
Returns: "92685374"
8
14256
Returns: "98746253"
8
14257
Returns: ""
8
818676059
Returns: ""
9
1
Returns: ""
16
7821
Returns: ""
31
3323
Returns: ""
35
3637
Returns: ""
38
975045199
Returns: ""
39
240352029
Returns: ""
46
525154836
Returns: ""
50
1
Returns: ""
50
1000000000
Returns: ""
1
2
Returns: "1"
8
666
Returns: "26498573"
4
4
Returns: "2349"
47
98734
Returns: ""
13
13
Returns: ""
8
11256
Returns: "79362845"
9
100
Returns: ""
8
555555
Returns: ""
7
20000
Returns: "9468573"
6
465
Returns: "257938"
7
1000
Returns: "2648759"
8
100
Returns: "25398764"
8
2
Returns: "25346978"
7
1000009
Returns: ""
1
10000
Returns: ""
9
65467
Returns: ""
7
1000000
Returns: ""
8
14000
Returns: "97286345"
1
14444
Returns: ""
8
10000
Returns: "69582743"
17
10007
Returns: ""
7
5000
Returns: "3769584"
50
1000
Returns: ""
5
765
Returns: "34598"
50
99990000
Returns: ""
9
200000
Returns: ""
12
14455
Returns: ""
1
1000
Returns: ""
8
12151
Returns: "85273694"
8
12
Returns: "25348796"
8
200
Returns: "25498736"
8
999999
Returns: ""
9
1000000
Returns: ""
8
1000
Returns: "27359864"
8
8
Returns: "25347986"
8
101
Returns: "25436879"
8
10464
Returns: "73598264"
1
103
Returns: ""
49
99999999
Returns: ""
1
100
Returns: ""
8
1000000000
Returns: ""
7
10
Returns: "2347895"
9
10
Returns: ""
50
5
Returns: ""
8
112
Returns: "25438796"
8
10
Returns: "25348697"
8
3
Returns: "25347689"
8
50000000
Returns: ""
8
12154
Returns: "85274369"
50
10000000
Returns: ""
49
1000000000
Returns: ""
1
20
Returns: ""
8
4999
Returns: "43789256"
1
12
Returns: ""
1
9
Returns: "8"
7
21595
Returns: "9876534"
50
10000
Returns: ""
8
1000000
Returns: ""
8
100000000
Returns: ""
10
1000000000
Returns: ""
6
753000
Returns: ""
8
500
Returns: "25943876"
8
12115
Returns: "84953726"
9
2000
Returns: ""
8
15200
Returns: ""
8
12345
Returns: "86397254"
8
12000
Returns: "84652793"
8
123
Returns: "25467893"