1006 换个格式输出整数——15分
让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。
输入格式:
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出 n。
输入样例 1:
234
输出样例 1:
BBSSS1234
输入样例 2:
23
输出样例 2:
SS123
| 代码长度限制 | 时间限制 ||内存限制 |
|16 KB | 400 ms | 64 MB |
思路:因为题目给出的数据范围不大,在(0,1000)中,所以可以分成(0,9),[10,100)和[100,1000)三个情况分别讨论。
代码如下:
#include<bits/stdtr1c++.h>
using namespace std;
int main() {
int num;
cin >> num;
if (num > 0 && num < 9) {
for (int i = 1; i <= num; i++) cout << i;
} else if (num >= 10 && num < 100) {
int a = num / 10, b = num % 10;
while (a--) cout << "S";
for (int i = 1; i <= b; i++) cout << i;
} else {
int a = num / 100;
int b = (num - a * 100) / 10, c = (num - a * 100) % 10;
while (a--) cout << "B";
while (b--) cout << "S";
for (int i = 1; i <= c; i++) cout << i;
}
return 0;
}
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现