构造数字(贪心算法)

在一个宁静的早晨, 迪迦奥特曼突然发现了一个奇特的物体。这个物体是一个来自未知星球的超级数字计算器。这个计算器拥有强大的功能, 可以计算出任何数字的结果, 甚至可以解析出数字之间的深层次联系和规律。

随着时间的推移, 迪迦奥特曼的数字能力变得越来越强大。他不仅可以快速计算出复杂的数字结果, 还可以理解数字背后的深层含义和规律。他的这种能力让他可以在战斗中更好地应对各种挑战, 因为数字和规律往往可以揭示出敌人的弱点和突破口。

现在迪迦奥特曼有一个十进制下的 N 位正整数, 但他忘记这个数的具体数值, 只记得每一位的数码之和不超过 M, 他想知道在所有可能中, 这个数最大可能是多少。即用 f(x) 表示十进制下x 每位数码之和, 例如f(114)=1+1+4=6,,给定 N,M,求最大的N 位十进制数x,满足f(x)≤M。

输入格式

第一行包括2个正整数N,M

输出格式

输出共1行,包含1个整数,表示最终答案

样例输入

3 1

样例输出

100

答案

java 复制代码
import java.util.ArrayList;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        int x = scan.nextInt();
        int M = scan.nextInt();
        ArrayList<Integer> arr = new ArrayList<>();
        while (arr.size() != x){
            if(M>9){
                arr.add(9);
                M = M - 9;
            }else{
                arr.add(M);
                M = 0;
            }
        }
        int length = arr.size();
        for(int i = 0;i < length;i++){
            System.out.print(arr.get(i));
        }
        scan.close();
    }
}

题目来源:蓝桥杯算法双周赛

相关推荐
To_OC5 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
2401_841495645 小时前
【操作系统】进程同步与互斥实验报告
c++·算法·操作系统·进程·并发·同步·互斥
爱刷碗的苏泓舒9 小时前
PPP-AR 中的参考星选取:数学原理、评价指标与切换处理
算法·gnss·模糊度固定·ppp-ar·星间单差·参考星·卫星端偏差
烬羽12 小时前
递归老写崩?一个"退回"公式,把回溯题变成填空题
javascript·深度学习·算法
闪电悠米12 小时前
力扣hot100-41.缺失的第一个正数-原地哈希详解
数据结构·算法·哈希算法
星空露珠13 小时前
28种颜色对应名称,
开发语言·数据库·算法·游戏·lua
QXWZ_IA15 小时前
桥梁数字孪生怎么落地?
人工智能·科技·算法·智能硬件·政务
Kel15 小时前
输出层与反分词(Output Layer & Detokenization)
人工智能·算法·架构
陕西企来客15 小时前
2026年7月技术好GEO优化方案:算法适配与内容策略
人工智能·算法·机器学习·技术好geo优化