算法训练 1的个数 java蓝桥杯

算法训练 1的个数

资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
  输入正整数n,判断从1到n之中,数字1一共要出现几次。例如1123这个数,则出现了两次1。例如15,那么从1到15之中,一共出现了8个1。
输入格式
  一个正整数n
输出格式
  一个整数,表示1出现的资料
样例输入
15
样例输出
8
数据规模和约定
  n不超过30000

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();			
		int flage = 0;
		for(int i=1;i<=n;i++){
			int b=i;
			while(b>0)
			{
				int c =b%10;
				if(c == 1) {
					flage ++;
				}
				b=b/10;			
			}	
		}
		System.out.println(flage);
		
	}

}

猜你喜欢

转载自blog.csdn.net/weixin_44517477/article/details/105465246