HDUOJ-----1085Holding Bin-Laden Captive!
Holding Bin-Laden Captive!
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11977 Accepted Submission(s): 5354
Problem Description
We all know that Bin-Laden is a notorious terrorist, and he has disappeared for a long time. But recently, it is reported that he hides in Hang Zhou of China! “Oh, God! How terrible! ”
Don’t be so afraid, guys. Although he hides in a cave of Hang Zhou, he dares not to go out. Laden is so bored recent years that he fling himself into some math problems, and he said that if anyone can solve his problem, he will give himself up! Ha-ha! Obviously, Laden is too proud of his intelligence! But, what is his problem? “Given some Chinese Coins (硬币) (three kinds-- 1, 2, 5), and their number is num_1, num_2 and num_5 respectively, please output the minimum value that you cannot pay with given coins.” You, super ACMer, should solve the problem easily, and don’t forget to take $25000000 from Bush!
Input
Input contains multiple test cases. Each test case contains 3 positive integers num_1, num_2 and num_5 (0<=num_i<=1000). A test case containing 0 0 0 terminates the input and this test case is not to be processed.
Output
Output the minimum positive value that one cannot pay with given coins, one line for one case.
Sample Input
1 1 3 0 0 0
Sample Output
4
Author
lcy
无疑是一道,母函数题.....(有关母函数的详细,请查看百度百科,在此就不做详细的说明了).
这道题的方法为:g(x)=(1+x^1+x^2+......+x^num1)*x^2(1+x^1+....+x^num2)*x^5(1+x^1+.....+x^num3);
其系数为0的即为所求: 所以关键是如何表达上面的式子.....一般采取的方法为先两两相乘...然后用得到结果与第三方相乘即可....
代码如下:
1 #include<iostream>
2 #include<cstring>
3 using namespace std;
4 const int maxn=10001 ;
5 int ratio[maxn], //系数
6 index[maxn]; //指数
7
8 int main()
9 {
10 int num1,num2,num3,i,j;
11 bool judge;
12 while(cin>>num1>>num2>>num3,num1+num2+num3)
13 {
14 memset(ratio,0,sizeof ratio);
15 memset(index,0,sizeof index);
16 for(i=0;i<=num1;i++)
17 {
18 ratio[i]=1;
19 for(j=0;j<=num2;j++)
20 {
21 index[2*j+i]+=ratio[i];
22 }
23 }
24 for(i=0;i<=num1+2*num2;i++)
25 {
26 ratio[i]=index[i];
27 index[i]=0;
28 }
29 for(i=0;i<=num1+2*num2;i++)
30 {
31 for(j=0;j<=num3;j++)
32 {
33 index[j*5+i]=ratio[i];
34 }
35 }
36 judge=true;
37 for(i=0;i<=num1+2*num2+5*num3;i++)
38 {
39 if(!index[i])
40 {
41 judge=false;
42 printf("%dn",i);
43 break;
44 }
45 }
46 if(judge)
47 printf("%dn",num1+2*num2+5*num3+1);
48 }
49 return 0;
50 }
- 小解Redis 系列
- 小侃 SQL加密和性能
- 接口测试 | 25 requests + pytest测试实例
- 接口测试 | 24 requests + unittest集成你的接口测试
- 接口测试 23 requests基础入门二
- 写让别人能读懂的代码+网页性能管理详解
- CDOJ 1330 柱爷与远古法阵【高斯消元,卡精度】
- Robot Framework | 04 参数化基于Public API的RFS测试
- 接口测试 | 22 requests基础入门
- 分享一个Mvc的多层架构,欢迎大家拍砖斧正
- Robot Framework | 03 基于Public API创建你RFS测试
- Robot Framework | 02 从抛弃RIDE开始创建你的RFS测试
- ASP.NET5 Beta8可用性
- Docker Swarm集群初探
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Spring全家桶之SpringBoot——高级阶段
- feign.FeignException$MethodNotAllowed: status 405 reading xxx#yyy(Integer)
- No serializer found for class 类名 and no properties discovered to create BeanSerializer
- 三步让你在Linux中发布SpringCloud项目
- 【赵渝强老师】MySQL高可用架构:MHA
- Python终极调试指南
- Spring全家桶之SpringCloud——高级阶段(上)
- go实现利用最大堆寻找最小k个数
- Go实现字符串相乘无溢出最详细解释
- 寻找和为定值的两个数
- 还不会命令行?用Go Flag自写命令行程序
- 【go】剑指offer:常见排序算法
- 剑指offer:重建一个二叉树
- Redis基础数据类型(string、hash、list)
- 【go】编程之法:01背包问题及滚动数组优化