- 闫晟淏 的博客
2025年3月9日
- @ 2025-3-9 14:04:31
错题:
章节六T2
错因:
缺少一项特殊情况。
思路:
写一个包含很多“||”的判断语句即可。
参考代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int m;
cin>>m;
if(m%4==0||m%7==0||m%47==0||m%74==0||m%44==0||m%77==0||m%444==0||m%447==0||m%474==0||m%477==0||m%744==0||m%747==0||m%774==0||m%777==0){
cout<<"YES";
}else{
cout<<"NO";
}
}
章节六T4
错因:
只考虑了10岁以上的可能性。
思路:
循环输入判断输入的是数字还是字符串,是数字就判断它是否小于18是字符串就判断它是不是酒水,如果以上两种有一种判定出来是true 计数变量加一 ,最后输出计数变量。
参考代码
#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
int n,sum=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>s;
if(s[0]=='1'&&s[1]-'0'<8&&s.size()==2||s.size()==1){
sum++;
}
if(s=="ABSINTH"||s=="BEER"||s=="BRANDY"||s=="CHAMPAGNE"||s=="GIN"||s=="RUM"||s=="SAKE"||s=="TEQUILA"||s=="VODKA"||s=="WHISKEY"||s=="WINE"){
sum++;
}
}
cout<<sum<<endl;
}
章节六T3
错因:
数组过小。
思路:
通过循环去前导0然后判断其长度是否一致 如果一致就一位一位的判断 大小如果大就输出>,如果小就输出< 满足以上任何一点就return 0;最后输出=结束程序 不一致就看哪个位数大来判断输出>或<.
参考代码
#include<bits/stdc++.h>
using namespace std;
int c[1000003],d[1000003];
int main(){
int ca=0,cb=0;
string a,b;
cin>>a>>b;
while(a[ca]=='0'){
ca++;
}
while(b[cb]=='0'){
cb++;
}
for(int i=ca;i<a.size();i++){
c[i]=a[i]-'0';
}
for(int i=cb;i<b.size();i++){
d[i]=b[i]-'0';
}
if(a.size()-ca>b.size()-cb){
cout<<">";
return 0;
}else if(a.size()-ca<b.size()-cb){
cout<<"<";
return 0;
}else{
for(int i=0;i<a.size()-ca;i++){
if(c[ca+i]>d[cb+i]){
cout<<">";
return 0;
}else if(c[ca+i]<d[cb+i]){
cout<<"<";
return 0;
}
}
}
cout<<"=";
return 0;
}
THE END