/*
 * 9607741
2013-11-17 18:04:23
Accepted
1085
187MS
5700K
1251 B
Java
zhangyi

 http://acm.hdu.edu.cn/showproblem.php?pid=1085

 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 12778    Accepted Submission(s): 5728

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

 

 */

/*

 * 大致题意:给你面值为1,2,5的硬币,不能组成最小的面值为?

 *

*/

import java.io.InputStreamReader;
import java.util.Scanner; public class Main {//DP
public static void main(String[] args) {
Scanner input=new Scanner(new InputStreamReader(System.in));
while(true){
int a=input.nextInt();
int b=input.nextInt();
int c=input.nextInt();
if(a+b+c==0)
break;
Mon m[]=new Mon[a+b*2+c*5+1];
for(int i=1;i<=a+b*2+c*5;i++)
m[i]=new Mon();
m[0]=new Mon(a,b,c);
m[0].ok=true;
for(int i=0;i<=a+b*2+c*5;i++){
if(m[i].ok){
if(m[i].a>0){
m[i+1].a=m[i].a-1;
m[i+1].b=m[i].b;
m[i+1].c=m[i].c;
m[i+1].ok=true;
}
if(m[i].b>0){
m[i+2].a=m[i].a;
m[i+2].b=m[i].b-1;
m[i+2].c=m[i].c;
m[i+2].ok=true;
}
if(m[i].c>0){
m[i+5].a=m[i].a;
m[i+5].b=m[i].b;
m[i+5].c=m[i].c-1;
m[i+5].ok=true;
}
}
}
boolean okk=true;
for(int i=1;i<=a+b*2+c*5;i++){
if(!m[i].ok)
{
System.out.println(i);
okk=false;
break;
}
}
if(okk)
System.out.println(a+b*2+c*5+1);
}
}
}
class Mon{
boolean ok=false;
int a,b,c;
public Mon(int a, int b, int c) {
this.a = a;
this.b = b;
this.c = c;
}
Mon(){};
}

Holding Bin-Laden Captive!_hdu_1085(DP).java的更多相关文章

  1. 2015年第六届蓝桥杯省赛T10 生命之树(树形dp+Java模拟vector)

    生命之树 在X森林里,上帝创建了生命之树. 他给每棵树的每个节点(叶子也称为一个节点)上,都标了一个整数,代表这个点的和谐值. 上帝要在这棵树内选出一个非空节点集S,使得对于S中的任意两个点a,b,都 ...

  2. /bin/java: 没有那个文件或目录spark/bin/spark-class:行71: /usr/java/jdk1.8

    1.检查java环境有没有问题 2.1没问题后检查文件的编码是否有问题

  3. JAVA模块化

    今天转载JAVA模块化系列的三篇文章. 在过去几年,Java模块化一直是一个活跃的话题.从JSR 277(现已废止)到JSR 291,模块化看起来是Java进化过程中的必经一环.即便是基于JVM的未来 ...

  4. 如何使用java代码启动tomcat和打开浏览器

    1.用于代码启动tomcat,也可以用代码运行电脑应用程序 public static void main(String[] args) { /* new MyThread().start(); ne ...

  5. bat执行java程序 good

    start.bat set MY_HOME=%~dp0  set JMS_BINDING_PATH=%MY_HOME%..\binds set JAVA_HOME=C:\Program Files\J ...

  6. java -version 问题

    我把 JAVA_HOME 从8改成了 7 , 为什么还是 显示的8啊 ! E:\sv0\jars>java -version java version "1.8.0_111" ...

  7. Linux 搭建Java web服务器

    未经允许,不得转载 1.jdk的下载与配置 1.1下载 sudo wget http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45- ...

  8. Java笔记:文件夹操作

    创建目录: File类中有两个方法可以用来创建文件夹: mkdir( )方法创建一个文件夹,成功则返回true,失败则返回false.失败表明File对象指定的路径已经存在,或者由于整个路径还不存在, ...

  9. java基础1_标识符,数据类型

    JDK的卸载与安装 : 1  卸载 a 从程序中卸载   控制面板 - 程序和功能 - 卸载JDK; b 删除  C:\Windows\System32 下面的  java   javac  java ...

随机推荐

  1. Spark源码阅读(1): Stage划分

    Spark中job由action动作生成,那么stage是如何划分的呢?一般的解答是根据宽窄依赖划分.那么我们深入源码看看吧 一个action 例如count,会在多次runJob中传递,最终会到一个 ...

  2. Heritrix源码分析(十) Heritrix中的Http Status Code(Http状态码)(转)

    本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/649737       本博客已迁移到本人独立博客: http://www.yun5u ...

  3. Oracle 11g RAC oc4j/gsd Offline

    Oracle 11g RAC中,发现oc4j以及gsd服务都处于offline状态,这是Oracle 11g RAC默认情形.即便如此,并不影响数据库的使用,因为 oc4j 是用于WLM 的一个资源, ...

  4. 实现输出h264直播流的rtmp服务器

    RTMP(Real Time Messaging Protocol)是常见的流媒体协议,用来传输音视频数据,结合flash,广泛用于直播.点播.聊天等应用,以及pc.移动.嵌入式等平台,是做流媒体开发 ...

  5. linux echo命令的-n、-e两个参数

    echo -n 不换行输出 $echo -n "123" $echo "456" 最终输出 123456 而不是 123 456 echo -e 处理特殊字符 ...

  6. [再寄小读者之数学篇](2014-11-19 $\tan x/x$ 在 $(0,\pi/2)$ 上递增)

    $$\bex \frac{\tan x}{x}\nearrow. \eex$$ Ref. [Proof Without Words: Monotonicity of $\tan x/x$ on $(0 ...

  7. HTML和URL比较

    1.录制脚本的基本原则 2.HTML和URL based script介绍 3.选择录制方式原则 4.HTML based script设置

  8. java --- 设计模式 --- 动态代理

    Java设计模式——动态代理 java提供了动态代理的对象,本文主要探究它的实现, 动态代理是AOP(面向切面编程, Aspect Oriented Programming)的基础实现方式, 动态代理 ...

  9. bzoj1391 最大权闭合子图(also最小割、网络流)

    一道裸的最小割的题,写一下只是练练手. 表示被卡M,RE不开心.一道裸题至于吗? 再次复习一下最大权闭合子图: 1.每一个点若为正权,与源点连一条容量为绝对值权值的边.否则连向汇点一条容量为绝对值权值 ...

  10. C语言实现strcpy

    strcpy.h: #ifndef STRCPY_H #define STRCPY_H #include <stdio.h> char *cat_strcpy(char *dst, con ...