问题描述
小明非常不喜欢数字 2,包括那些数位上包含数字 2 的数。如果一个数的数位不包含数字 2,小明将它称为洁净数。
请问在整数 1 至 n 中,洁净数有多少个?
输入格式
输入的第一行包含一个整数 n。
输出格式
输出一行包含一个整数,表示答案。
样例输入
30
样例输出
18
评测用例规模与约定
对于 40% 的评测用例,1 <= n <= 10000。
对于 80% 的评测用例,1 <= n <= 100000。
对于所有评测用例,1 <= n <= 1000000。
思路
1.先获取n,接着写一个循环从1开始遍历到n
2.在循环内通过将当前数字i转换为String并使用tochararray方法来获取i的每一位存入char[]数组中
3.写一个方法(p),在方法里通过遍历char[]数组来判断当前数的数位上有没有2
4.如果判断无2 则总数++
public static void main(String[