题目描述:
小明开了一家糖果店。他别出心裁:把水果糖包成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);
}
}