分酒问题_求最大不能组合出的数字
2014-03-02 21:42
267 查看
import java.util.Scanner; /* 小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。 小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。 你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7组合出来。 本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。 输入: 两个正整数,表示每种包装中糖的颗数(都不多于1000) 要求输出: 一个正整数,表示最大不能买到的糖数 例如: 用户输入: 4 7 程序应该输出: 17 再例如: 用户输入: 3 5 程序应该输出: 7*/ public class WineTest { static final int N = 1000 * 100; static int se(int[] da, int a) { int n = 0; for (int i = 0; i < da.length; i++) { if (da[i] == 1) { n++; if (n >= a) return i - a; } else n = 0; } return -1; } static void f(int a, int b) { int[] da = new int ; for (int i = 0; i <= N / a; i++) { for (int j = 0; j <= (N - i * a) / b; j++) { if (i * a + b * j < N) da[i * a + b * j] = 1; } } System.out.println(se(da, a)); } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = Integer.valueOf(sc.nextLine()); int b = Integer.valueOf(sc.nextLine()); f(a,b); // f(4,7); } }
4 7 17
相关文章推荐
- 2中方法实现数学中组合问题《在10个数中找出任意6个数的组合,数字不能》
- 第三周项目6:穷举法解决组合问题---猜数字问题
- PHP数组数字键值的最大值问题
- html td 换行-解决长串英文字母或者数字不能自动换行的问题
- 腾讯2017年实习生编程题目(第三题)——有趣的数字 小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,差最小的有多少对呢?差最大呢?
- python 回溯法 子集树模板 系列 —— 4、数字组合问题
- 解决浏览器显示长数字不能自动换行或长字母不能换行的问题
- 第2章 数字之魅——最大公约数问题
- JAVASCRIPT去验证不能超过12个数字或英文或数字英文组合,还要求不能超过6个汉字,还要验证汉字和字母,数字的组合
- 01背包问题的变式Openjudge 2985:数字组合
- sdut 2072 删数问题 删除几个数字之后求最大数
- django学习——解决博客评论中长串单个英文字母或数字不能换行的问题
- Solr 数字字符不能搜索的一个问题
- 数字不能被精确表示成为一个double问题
- 给定A和B,A和B互质,求最大不能组合数,和不能组合数的个数。
- 求两个整型数字的最大公约数问题
- 求和最大的数字组合。
- 佣金宝数字证书不能安装的问题
- 【网络流24题】No.16 数字梯形问题 (不相交路径 最大费用流)
- 数字序列加入+,*运算符后取得最大值问题; 动态规划;打破传统从决策入手思想;找出问题的特有性质;从例子入手找特点