Problem Statement
Definition
- Class:
- BooksNumbering
- Method:
- numberOfBooks
- Parameters:
- int
- Returns:
- int
- Method signature:
- int numberOfBooks(int usedDigits)
- (be sure your method is public)
Constraints
- usedDigits will be between 1 and 2 * 109, inclusive.
Examples
11
Returns: 10
Each of the first 9 numbers (1-9) contain one digit. Number 10 contains 2 digits. Therefore, there's a total of 11 digits.
10
Returns: -1
There is no possible solution. It takes 9 digits to label 9 books, and 11 digits to label 10 books.
189
Returns: 99
192
Returns: 100
1999999998
Returns: 234567900
2000000000
Returns: -1
7
Returns: 7
1
Returns: 1
1863927342
Returns: 219448716
1863927343
Returns: -1
9
Returns: 9
99
Returns: 54
999
Returns: 369
9999
Returns: -1
99999
Returns: 22221
999999
Returns: 185184
9999999
Returns: -1
99999999
Returns: -1
999999999
Returns: 123456789
189
Returns: 99
99
2889
Returns: 999
999
38889
Returns: 9999
9999
488889
Returns: 99999
99999
5888889
Returns: 999999
999999
68888889
Returns: 9999999
9999999
788888889
Returns: 99999999
99999999
192
Returns: 100
100
2893
Returns: 1000
1000
38894
Returns: 10000
10000
488895
Returns: 100000
100000
5888896
Returns: 1000000
1000000
68888897
Returns: 10000000
10000000
788888898
Returns: 100000000
100000000
12
Returns: -1
10
Returns: -1
193
Returns: -1
191
Returns: -1
2896
Returns: -1
2891
Returns: -1
38897
Returns: -1
38891
Returns: -1
488898
Returns: -1
488890
Returns: -1
5888902
Returns: -1
5888890
Returns: -1
68888904
Returns: -1
68888890
Returns: -1
788888900
Returns: -1
788888894
Returns: -1
756419241
Returns: 95941293
756419240
Returns: -1