Problem Statement
Cat Taro likes coins. For any non-negative integer K, he has exactly two coins of value 2^K (i.e., two to the power of K).
You are given a
Definition
- Class:
- TaroCoins
- Method:
- getNumber
- Parameters:
- long
- Returns:
- long
- Method signature:
- long getNumber(long N)
- (be sure your method is public)
Notes
- The answer will always fit in a signed 64-bit integer.
Constraints
- N will be between 1 and 1,000,000,000,000,000,000 (10^18), inclusive.
Examples
1
Returns: 1
The only possible way to represent N in this case is to use one coin of value 1.
6
Returns: 3
The following three representations are possible in this case: {1, 1, 2, 2}, {1, 1, 4} and {2, 4}
47
Returns: 2
256
Returns: 9
8489289
Returns: 6853
1000000000
Returns: 73411
100
Returns: 19
128
Returns: 8
1073741824
Returns: 31
6370
Returns: 175
10
Returns: 5
2
Returns: 2
3
Returns: 1
4
Returns: 3
2000000000
Returns: 81034
999999999
Returns: 7623
1000000000000000000
Returns: 554817437
576460752303423488
Returns: 60
640
Returns: 23
785
Returns: 34
1022
Returns: 10
962
Returns: 38
640
Returns: 23
1099510542205
Returns: 17863
944875173846
Returns: 1243789
672031828383
Returns: 500073
893915235088
Returns: 243779
1088385987371
Returns: 4634234
347905064087584832
Returns: 5150282
309341003709448449
Returns: 19102955
361431780114432130
Returns: 94727263
378311177695920400
Returns: 20702253
290553370434404484
Returns: 146293655
423901414250789313
Returns: 292614203
438190581230404958
Returns: 6012372582
293666568548731467
Returns: 3648043185
392393882169705920
Returns: 3341296806
376370659955075108
Returns: 3279511256
412658913555584867
Returns: 3498747798
410054521552536292
Returns: 26030230909
416860608518791589
Returns: 8015276820
393014244375683364
Returns: 16905456859
518010418436963490
Returns: 15340957057
576460730781662959
Returns: 794365
565764701561028461
Returns: 2186952
571954850028252927
Returns: 7287457
558161296277634687
Returns: 1416255
504314853196816127
Returns: 6183662
768614336404564650
Returns: 2504730781961
384307168202282325
Returns: 956722026041
384307168202282324
Returns: 1548008755920
192153584101141162
Returns: 956722026041
196657183728511722
Returns: 502131822759
193349852752161450
Returns: 484936992181
196731950519200426
Returns: 350312970581
192153584101141166
Returns: 644603021052
10000000000000000
Returns: 17165857
200
Returns: 26
93459834598323452
Returns: 317400926
1717161617181871
Returns: 69493195
123456789
Returns: 51639
999999999999999999
Returns: 29665503
263810380166378775
Returns: 4693345949