Kita perlu mencari bilangan digit dalam nombor ke-n yang diperbuat daripada empat digit 1, 2, 3, dan 4 yang diberi.
Siri dengan empat digit di atas adalah seperti berikut
1, 2, 3, 4, 11, 12, 13, 14, 21, 22, 23, 24...
Kita perlu mencari bilangan digit nombor ke-n daripada siri di atas. Jika anda memerhati corak dengan teliti, anda akan mendapati perkara berikut.
Terdapat 4 nombor dengan digit 1.
Terdapat 16 nombor dengan digit 2.
Corak itu berterusan sebagai kuasa 4 .
Mari kita lihat contoh
Input
7
Output
2
Nombor ke-7 dalam siri ini ialah 13 dan nombor 2 digit di dalamnya adalah
#include <bits/stdc++.h> using namespace std; int getDigitsCount(int n) { int i, result = 1, sum = 0; for (i = 4; ; i *= 4) { sum += i; if (sum >= n) { break; } result += 1; } return result; } int main() { int n = 57; cout << getDigitsCount(n) << endl; return 0; }
输出
Atas ialah kandungan terperinci Dalam C++, bilangan digit dalam nombor ke-n terdiri daripada empat nombor yang diberikan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!