Giới thiệu
Cho số nguyên N. Tìm số thứ N trong hệ số chỉ chứa chữ số 3 và 4: 3, 4, 33, 34, 43, 44, 333, 334, 343, 344, …
Ví dụ minh họa
Đầu vào
N = 6
Đầu ra
44
Giải thích
Dãy: 3, 4, 33, 34, 43, 44, ...
Phương pháp giải
Hệ số này tương tự nhị phân: 0 ↔ 3, 1 ↔ 4. Số thứ N là biểu diễn nhị phân của (N-1) với 0→3, 1→4.
Chương trình minh họa
#include <iostream>
using namespace std;
void findNthTermNumberSystem(int N) {
if (N == 1 || N == 2) {
cout << (N-1) + 3;
return;
}
N -= 1;
findNthTermNumberSystem(N/2);
cout << ((N % 2) + 3);
}
int main() {
int N = 12;
cout << N << "th term of the number system is ";
findNthTermNumberSystem(N);
return 0;
}
Đầu ra
12th term of the number system is 434