1006
/*
让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。
输入格式:
每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。
输出格式:
每个测试用例的输出占一行,用规定的格式输出 n。
输入样例 1:
234
输出样例 1:
BBSSS1234
输入样例 2:
23
输出样例 2:
SS123
*/
/*我的辣鸡代码
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int result;
cin>>result;
for(int i = 0;i<result/100;i++){
cout<<"B";
}
for(int i = 0;i<(result%100)/10;i++){
cout<<"S";
}
for(int i = 1;i<=(result%10);i++){
cout<<i;
}
return 0;
}
*/
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
string n;
cin >> n;
int s = n.size(); // s为字符串长度
for (int i = 0; i < s; ++i) {
// j不仅负责计数,还负责遍历从'1'到n[i]之间的字符
for (char j = '1'; j <= n[i]; ++j) {
// i为j-3说明是百位,i为j-2说明是十位,否则是个位
cout << (i == s - 3 ? 'B' : i == s - 2 ? 'S' : j);
}
}
return 0;
}
1009
/*
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:
测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。
输出格式:
每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
*/
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
string s;
stack<string> st;
//以空格为间隔符将每个字符串入栈
while (cin >> s) {
st.push(s);
if(cin.get()=='\n') break;//仅是为了使自己回车后可以运行结果
}
//empty函数返回一个bool值,栈为空时返回true,否则返回false
while (!st.empty()) {
cout << st.top();//top函数的返回值是栈顶元素(注意并没有删掉栈顶元素)
st.pop();//pop函数将栈顶元素删掉,没有返回值
cout << (st.empty() ? "" : " ");
}
return 0;
}
参考链接:
https://www.cnblogs.com/magisk/p/9193351.html
https://blog.csdn.net/aaakkk_1996/article/details/88040627?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase