[非官方]ACGO欢乐赛#66题解
2026-02-09 14:49:42
发布于:广东
第不知道多少次发题解了,希望不会被删,,实在是记不住Markdown排版的规则了,望理解 (?)
由于时间不太够,我会分成2段发布(T1T3一段,T4T6一段)。
T1:
这道题的数值是固定的,所以我用了直接输出,建议各位大佬使用循环。
代码实现:
#include <iostream>
using namespace std;
int main(){
cout<< " * "<<endl;//第一行
cout<<" *** "<<endl;//第二行
cout<<"*****"<<endl;//第三行
cout<<" *** "<<endl;//第四行
cout<<" * ";//第五行
}
注意:空格和换行一定不要忘记,不然就不能AC了哦~
T2:
这道题考察的是基础的输入输出和判断,只需要把输入的数值和390(也就是6.5分钟)进行比较,再根据判断结果进行输出即可。
代码实现:
#include <iostream>
using namespace std;
int main(){
int y;
cin>>y;//输入煮溏心蛋用了多少秒
if(y<390) cout<<390-y;//如果没煮够,输出还需要煮多少秒
else if(y==390) cout<<"perfect";//如果煮的时间刚好,输出 "perfect" 。
else cout<<"overcooked";//如果煮过了,直接输出 "overcooked" 。
}
注意:6.5分钟在判断时,单位要换成秒,因为用户输入的值也是以秒为单位的。
T3:
这一题考察的是循环、判断和基础的输入输出,需要判断输入的数组的顺序是否是降序。
具体判断方法见下:
1. 设一个bool类型的变量 (这里我用x表示) 保存输入的数组是否是降序 (判断int类型的变量是否等于0也可以), 初始值为true (也就是假设这个数组是降序的)。
2. 循环n (数组的长度) 次,判断是否是降序,如果其中某一个值比其上一个值大,那么这个数组就不是降序的,需要将x的值改为false, 否则x的值不变。
3.判断x是否为true,如果是,输出 YES , 否则输出 NO 。
代码实现:
#include <iostream>
using namespace std;
int main(){
int n,h[100000];
cin>>n;
for(int i=0;i<n;i++){
cin>>h[i];
}
for(int i=0;i<n;i++){
if(h[i]<h[i+1]){
cout<<"NO";
return 0;
}
}
cout<<"YES";
}
注意:"YES" 和 "NO" 字母全部要大写,哪一个条件是返回 "YES" 、哪一个条件是返回 "NO" 不要搞错了。
这里空空如也



















有帮助,赞一个