买不到的数目

题目描述:

小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。

小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。

你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7组合出来。

本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。

代码:

java 复制代码
package lanqiao;

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();

        int max = Math.max(a,b);

        int[] arr = new int[9999];
        arr[a] = 1;
        arr[b] = 1;

        int k = 0;
        int s = 0;

        for(int i = 1;i < arr.length;i ++)
        {
            if(arr[i] == 0)
            {
                k = i;
                s = 0;
            }
            else{
                arr[i + a] = 1;
                arr[i + b] = 1;
                s += 1;
            }

            if(s >= max)
            {
                break;
            }
        }
        System.out.println(k);
    }
}
相关推荐
小王不爱笑1326 分钟前
代码生成器
java·mybatis
韭菜钟7 分钟前
在Qt中使用QuickJS
开发语言·qt
Vanranrr11 分钟前
C++临时对象与悬空指针:一个导致资源加载失败的隐藏陷阱
服务器·c++·算法
β添砖java13 分钟前
python第一阶段第六章python数据容器
开发语言·python
Slow菜鸟13 分钟前
Java开发规范(五)| 接口设计规范—前后端/跨服务协作的“架构级契约”
java·状态模式·设计规范
YouEmbedded15 分钟前
解码C++基础——从C到C++
开发语言·从c到c++
Slow菜鸟16 分钟前
SpringBoot教程(三十五)| SpringBoot集成TraceId(追踪ID)
java·spring boot·后端
yong999019 分钟前
基于多普勒连续波雷达原理的MATLAB测速程序
开发语言·matlab
__万波__23 分钟前
二十三种设计模式(二)--工厂方法模式
java·设计模式·工厂方法模式
o***369327 分钟前
python爬虫——爬取全年天气数据并做可视化分析
开发语言·爬虫·python