题目1209:最小邮票数DP
来源:互联网 发布:马赛克拼图软件 编辑:程序博客网 时间:2024/05/01 01:08
import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.math.BigInteger;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.StringTokenizer;public class Main { public static void main(String[] args) { new Task().solve() ; }}class Task{InputReader in = new InputReader(System.in) ;PrintWriter out = new PrintWriter(System.out) ;void solve(){while(in.hasNext()){int m = in.nextInt() ;int n = in.nextInt() ;int[] dp = new int[m+1] ;Arrays.fill(dp , Integer.MAX_VALUE) ;dp[0] = 0 ;while(n-- > 0){int v = in.nextInt() ;if(v > m) continue ;for(int i = Math.max(0 , m - v) ; i >= 0 ; i--){if(dp[i] != Integer.MAX_VALUE){dp[i+v] = Math.min(dp[i+v] , dp[i] + 1) ;}}}out.println(dp[m] == Integer.MAX_VALUE ? 0 : dp[m]) ;//out.flush();}out.flush();}}class InputReader { public BufferedReader reader; public StringTokenizer tokenizer; public InputReader(InputStream stream) { reader = new BufferedReader(new InputStreamReader(stream), 32768); tokenizer = new StringTokenizer(""); } private void eat(String s) { tokenizer = new StringTokenizer(s); } public String nextLine() { try { return reader.readLine(); } catch (Exception e) { return null; } } public boolean hasNext() { while (!tokenizer.hasMoreTokens()) { String s = nextLine(); if (s == null) return false; eat(s); } return true; } public String next() { hasNext(); return tokenizer.nextToken(); } public int nextInt() { return Integer.parseInt(next()); } public long nextLong() { return Long.parseLong(next()); } public double nextDouble() { return Double.parseDouble(next()); } public BigInteger nextBigInteger() { return new BigInteger(next()); } }
0 0
- 题目1209:最小邮票数DP
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 题目1209:最小邮票数
- 九度题目1209:最小邮票数
- 九度题目1209:最小邮票数
- 九度oj 题目1209:最小邮票数
- 九度OJ 题目1209:最小邮票数
- 九度 oj 题目1209:最小邮票数
- 九度1209:最小邮票数-简单dp
- 1209_最小邮票数
- 九度oj 题目1209:最小邮票数 (01背包)
- 九度OJ 1209: 最小邮票数
- Chapter01 Java开发入门——JDK的使用
- Retrofit2.0基础用法
- L2-003. 月饼
- freeswitch通话质量调查
- SnackBar 源码bug修复、源码解析
- 题目1209:最小邮票数DP
- jquery $.trim()方法使用介绍
- 无法收到AndroidStudio的更新提示
- 3月21日,TestFrame对象是事件源又是监听者,每日20行。
- 在Mac上基于XAMPP本地多站点的配置
- 【Linux】进程间通信(IPC)之信号量详解与测试用例
- Maven编译报错 Unknown lifecycle phase "mvn" 解决办法
- 每天一个Linux命令
- 使用CSDN-markdown编辑器快捷键