Một số nguyên dương có thể được biểu diễn trong một cơ sở số nguyên 1 <= b < inf
.
Khi được chuyển đổi sang cơ sở đó, nó có một số chữ số riêng biệt.
Bất kỳ số nguyên dương trong cơ sở 1
có 1
chữ số riêng biệt.
Hầu hết các số nguyên dương trong cơ sở 2
có 2
các chữ số riêng biệt, ngoại lệ là các số có dạng 2^n - 1
, chỉ có 1
.
Vì vậy, số nguyên dương đầu tiên có thể được biểu diễn trong một cơ sở số nguyên có 1
chữ số duy nhất là 1
và số nguyên đầu tiên có thể được biểu thị bằng 2
các chữ số riêng biệt là 2
.
Có thể nói đó 1
là số nguyên đầu tiên có phân tập số 1
và 2
là số nguyên đầu tiên có phân tập số 2
.
Thử thách:
Cho một số nguyên dương n
trả về số nguyên dương đầu tiên (trong cơ sở mười *) có đa dạng kỹ thuật số là n
.
* nếu ngôn ngữ của bạn chỉ hỗ trợ một cơ sở cụ thể (ví dụ: đơn nguyên hoặc nhị phân) thì bạn có thể xuất ra trong cơ sở đó.
Thuật toán của bạn phải hoạt động trên lý thuyết cho bất kỳ đầu vào số nguyên dương nào: nó có thể thất bại vì độ chính xác của số nguyên ngôn ngữ của bạn quá nhỏ so với đầu ra; nhưng có thể không thất bại vì chuyển đổi cơ sở chỉ được xác định tối đa một số giới hạn.
Các trường hợp thử nghiệm
input output
1 1
2 2
3 11
4 75
5 694
6 8345
7 123717
17 49030176097150555672
20 5271200265927977839335179
35 31553934355853606735562426636407089783813301667210139
63 3625251781415299613726919161860178255907794200133329465833974783321623703779312895623049180230543882191649073441
257 87678437238928144977867204156371666030574491195943247606217411725999221158137320290311206746021269051905957869964398955543865645836750532964676103309118517901711628268617642190891105089936701834562621017362909185346834491214407969530898724148629372941508591337423558645926764610261822387781382563338079572769909101879401794746607730261119588219922573912353523976018472514396317057486257150092160745928604277707892487794747938484196105308022626085969393774316283689089561353458798878282422725100360693093282006215082783023264045094700028196975508236300153490495688610733745982183150355962887110565055971546946484175232
Đây là code-golf , giải pháp ngắn nhất trong byte thắng.
OEIS: A049363 - cũng là số số nhỏ nhất trong cơ sở n.