欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

给出一个正整数 nnn,请你计算从 111 到 nnn 的所有正整数中,有多少个数字的各位数和是 999,Java

程序员文章站 2024-03-16 14:38:52
...

题目描述:
给出一个正整数 nnn,请你计算从 111 到 nnn 的所有正整数中,有多少个数字的各位数和是 999?

输入格式:
输入一个不超过 100000010000001000000 的正整数 nnn。

输出格式:
输出一个整数表示答案

输入输出样例:
输入 #1
50
输出 #1
5

说明/提示:
111 到 505050 的所有整数中,有 9,18,27,36,459,18,27,36,459,18,27,36,45 这 555 个数字符合要求。

Java代码:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int count = 0, temp;
        for (int i = 1; i <= n; i++) {
            temp = i;
            int s = temp % 10;
            temp /= 10;
            while (temp != 0){
                s += temp % 10;
                temp /= 10;
            }
            if (s == 9){
                count++;
            }
        }
        System.out.println(count);
    }
}