文章目录
L1-1 PTA使我精神焕发 (5分)
#include <iostream>
int main(void)
{
cout << "PTA shi3 wo3 jing1 shen2 huan4 fa1 !" << endl;
return 0;
}
L1-2 6翻了 (15分)
#include <iostream>
#include <string>
using namespace std;
int main(void)
{
string s;
int cnt = 0;
getline(cin, s);
for (int i = 0; i < s.size(); i++){
if (s[i] == '6')
cnt++;
if (s[i] != '6' || i == s.size() - 1){//如果当前不是6或者是最后一个字符
if (cnt <= 3){
for (int j = 0; j < cnt; j++)
cout << "6";
}
else if (cnt > 3 && cnt <= 9)
cout << "9";
else if (cnt > 9)
cout << "27";
cnt = 0;
if (i != s.size() - 1)//当前不是最后一个字符
cout << s[i];
else if (i == s.size() - 1 && s[i] != '6')//当前是最后一个字符并且不是6
cout << s[i];
}
}
cout << endl;
return 0;
}
L1-3 敲笨钟 (20分)
L1-4 心理阴影面积 (5分)
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
int x, y;
cin >> x >> y;
cout << 50 * (x - y) << endl;
return 0;
}
L1-5 新胖子公式 (10分)
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
double w, h, BMI;
cin >> w >> h;
BMI = w / (h * h);
printf("%.1lf\n", BMI);
if (BMI > 25)
printf("PANG\n");
else
printf("Hai Xing\n");
return 0;
}
L1-6 幸运彩票 (15分)
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
int n;
char num[7];
cin >> n;
while (n--){
cin >> num;
if (num[0] + num[1] + num[2] == num[3] + num[4] + num[5])
cout << "You are lucky!" << endl;
else
cout << "Wish you good luck." << endl;
}
return 0;
}
L1-7 吃鱼还是吃肉 (10分)
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
int n, sex, h, w;
cin >> n;
while (n--){
cin >> sex >> h >> w;
if (sex == 1){
if (h == 130)
cout << "wan mei! ";
else if (h > 130)
cout << "ni li hai! ";
else
cout << "duo chi yu! ";
if (w == 27)
cout << "wan mei!" << endl;
else if (w > 27)
cout << "shao chi rou!" << endl;
else
cout << "duo chi rou!" << endl;
}
else{
if (h == 129)
cout << "wan mei! ";
else if (h > 129)
cout << "ni li hai! ";
else
cout << "duo chi yu! ";
if (w == 25)
cout << "wan mei!" << endl;
else if (w > 25)
cout << "shao chi rou!" << endl;
else
cout << "duo chi rou!" << endl;
}
}
return 0;
}
L2-4 彩虹瓶 (25分)
#include <iostream>
#include <stack>
using namespace std;
stack<int> stk;
int main(void)
{
int n, m, k, t;
bool flag;
cin >> n >> m >> k;
while (k--){
flag = true;
int idx = 1;
for (int i = 0; i < n; i++){//装填时
cin >> t;
if (t == idx)
idx++;
else if (stk.size() != 0 && stk.top() == idx){
stk.pop();
idx++;
}
else{
stk.push(t);
if (stk.size() > m)
flag = false;
}
//每次发货后,检查栈顶元素是否能装填
while (stk.size() != 0 && stk.top() == idx){
stk.pop();
idx++;
}
}
while (idx != n + 1){//装填完之后,取出栈中的元素
if (stk.top() == idx){
stk.pop();
idx++;
}
else{
flag = false;
break;
}
}
if (flag)
cout << "YES" << endl;
else
cout << "NO" << endl;
while (stk.size() != 0)//清空栈
stk.pop();
}
return 0;
}