签到题就不多说了,献上第一份我的弱鸡题解。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a;cin >> a;//输入的整数
int ans = 0;//输出的结果
for(int i = 1;i <= a; ++ i)//枚举从1到a所有数
{
int cnt = 1;//用来记录奇数位还是偶数位
int flag = 1;//用来判断是否好数的标记
int rec = i;//获得i值取出各个位置的值进行判断
while(rec)
{
int j = rec % 10;//取出最后一位
if(cnt % 2 == 1)//若奇数位
{
if(j % 2 != 1)//若奇数位不为奇数
{
flag = 0;
}
}
if(cnt % 2 == 0)//若偶数位
{
if(j % 2 != 0)//若偶数位不为偶数
{
flag = 0;
}
}
cnt ++;//第几位增加(从后往前)
rec /= 10;//去掉最后一位
}
if(flag == 1)ans ++;//判断是否好数
}
cout << ans;//输出答案
return 0;
}
1 回复
0 转发
1 喜欢
4 阅读



