题面
一个正整数如果任何一个数位不大于右边相邻的数位,则称为一个数位递增的数, 例如1135是一个数位递增的数,而1024不是一个数位递增的数。 给定正整数 n,请问在整数 1 至 n 中有多少个数位递增的数?
输入
输入n
输出
输出整数 1 至 n 中数位递增的数的个数
样例输入
1135
样例输出
239
代码
import java.util.Scanner; public class Main { public static boolean is_increase (int i) { int x = 10; while(i != 0) { if(x >= i % 10) { x = i % 10; i /= 10; } else { return false; } } return true; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int cnt = 0; int n = sc.nextInt(); for(int i = 1; i <= n; ++i) { if(is_increase(i)) { cnt ++; } } System.out.println(cnt); } }
Comments NOTHING