似乎与众不同的题解|A425.打印数字2
2026-01-07 12:25:09
发布于:浙江
0阅读
0回复
0点赞
原题
在这些题解里面,大多数的人的思路大概是这样的:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m;
cin>>n>>m;
for(int i=n;i<=m;i++){//一个一个地排查
if(i%2==1){//如果是奇数,那么就输出
cout<<i<<endl;
}
}
return 0;
}
而我的思路大概是这样的:
起点并非要从n开始,
也可以从n到m中第一个奇数开始,
所以当n为奇数时,我们不管他,
如果n为偶数时,我们就要对它处理一下了,
偶数加一就是奇数,因为n≤m,所以将n+1符合要求,
奇数+2也是奇数,所以循环时我们将n一直加2就行了,输出n。
代码:
#include<bits/stdc++.h>
using namespace std;
int n,m;
int main(){
cin>>n>>m;
if(n%2==0){//将n变为奇数
n++;
}
for(/*这里是定义变量的,前面n已经定义过了,所以可以空*/;n<=m;n+=2){
cout<<n<<endl;
}
return 0;
}
这里空空如也







有帮助,赞一个