*【每日一题 基础题】 [蓝桥杯 2024 省 B] 好数
[蓝桥杯 2024 省 B] 好数
好数
一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位……)上的数字是奇数,偶数位(十位、千位、十万位……)上的数字是偶数,我们就称之为“好数”。
给定一个正整数 N,请计算从 1 到 N 一共有多少个好数。
输入格式
一个整数 N。
输出格式
一个整数代表答案。
import java.util.Scanner;
public class java {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = 2;
int c = 0;
int d = 0;
boolean e = true;
while(a!=0){
c = a;
b = 2;
e = true;
if(c<10&&c%2!=0){
d++;
a--;
continue;
}
if(c%2==0){
a--;
continue;
}
while ((c/10)>=1) {
c=c/10;
if(b%2!=0){
if(c%2==0) {e=false;break;}
}else{
if(c%2!=0) {e=false;break;}
}
b++;
}
if(e==true){d++;}
a--;}
System.out.println(d);
}
}