C++中第K個Boom數
在本教程中,我們將編寫一個程式來查詢第k個Boom數。
只包含數字2和3的數被稱為Boom數。
讓我們看看解決上述問題的步驟。
- 初始化k的值。
- 初始化一個字串佇列。
- 將空字串推入佇列。
- 初始化一個計數器變數為0。
- 編寫一個迴圈,直到計數器小於或等於給定的k。
- 獲取佇列的頭部元素。
- 從佇列中彈出元素。
- 將佇列的頭部元素儲存在一個變數中。
- 在頭部追加2後,將新數字推入佇列。
- 遞增計數器並檢查k是否等於計數器。
- 如果計數器等於k,則列印值並中斷。
- 在頭部追加3後,將新數字推入佇列。
- 遞增計數器並檢查k是否等於計數器。
- 遞增計數器並檢查k是否等於計數器。
示例
讓我們看看程式碼。
#include<bits/stdc++.h>
using namespace std;
void findKthBoomNumber(long long k) {
queue<string> queue;
queue.push("");
long long count = 0;
while (count <= k) {
string numberOne = queue.front();
queue.pop();
string numberTwo = numberOne;
queue.push(numberOne.append("2"));
count++;
if (count == k) {
cout << numberOne << endl;
break;
}
queue.push(numberTwo.append("3"));
count++;
if (count == k) {
cout << numberTwo << endl;
break;
}
}
}
int main() {
long long k = 45;
findKthBoomNumber(k);
return 0;
}輸出
如果您執行上述程式碼,您將得到以下結果。
23332
結論
如果您在本教程中有任何疑問,請在評論區提出。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP