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