UVa 10306 - e-Coins
题目:有m个钱币,有两种价值(xi,yi),现在要求组成面值sum(x)^2+sum(y)^2=s^2的最少硬币数。
分析:dp,二维安全背包。和以为背包相同,只是容量现在是二维的,按递增序枚举两个容量即可;
求解时,枚举所有x^2+y^2=s^2的x和y,取最小即可。
说明:最近开始练习dp(⊙_⊙)。
#include <iostream>
#include <cstdlib>
#include <cstdio>using namespace std;int x[42],y[42];
int dp[302][302];int main()
{int n,m,s;while (cin >> n)while (n --) {cin >> m >> s;for (int i = 0 ; i <= s ; ++ i)for (int j = 0 ; j <= s ; ++ j)dp[i][j] = 100000; for (int i = 1 ; i <= m ; ++ i) {cin >> x[i] >> y[i];dp[x[i]][y[i]] = 1;}for (int i = 1 ; i <= m ; ++ i)for (int j = x[i] ; j <= s ; ++ j)for (int k = y[i] ; k <= s ; ++ k)if (dp[j][k] > dp[j-x[i]][k-y[i]]+1)dp[j][k] = dp[j-x[i]][k-y[i]]+1;int max = 100000;for (int i = 0 ; i <= s ; ++ i)for (int j = 0 ; j <= s ; ++ j)if (i*i+j*j == s*s && max > dp[i][j])max = dp[i][j];if (max == 100000)printf("not possible\n");else printf("%d\n",max);}return 0;
}
UVa 10306 - e-Coins相关推荐
- UVA 10306 e-Coins(全然背包: 二维限制条件)
UVA 10306 e-Coins(全然背包: 二维限制条件) http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Item ...
- UVA 10306 e-Coins (二维背包)
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- uva 10306 e-Coin
原题: At the Department for Bills and Coins, an extension of today's monetary system has newly been pr ...
- UVA - 10306 e-Coins
题目大意:给出m和s, 再给出m种电子硬币,每种硬币有两种金额xi,yi.现在要在m种硬币种选若干个硬币,可以重复选同一种硬币, 使得(x1 + x2 + .... + xn) ^ 2 + (y1 + ...
- uva 10306(完全背包)
题意:有m种硬币和目标值s,如果能最少拿k个可以让拿出的硬币的x的和和y的和的平方和等于s的平方,输出k. 题解:完全背包问题,f[i][j]代表当硬币的x和y分别为i和j时最少共有多少个硬币组成,然 ...
- UVA 10306 e-Coins(二维完全背包)
题意:e-coin有两个价值x,y,现在给你一个价值n,给你几种e-coin,问你能否用最小的e-coin数得到所求的价值n*n=(x1+x2+...xn)^2+(y1+y2+...yn)^2. 思路 ...
- uva 10306 e-coins【dp】
二维完全背包 #include <bits/stdc++.h> #define cl(a) memset(a,0,sizeof(a)) #define rep(i,a,b) for(int ...
- UVa 10306. e-Coins
题意为有m个向量,将任意个向量相加使得距离刚好为s,求向量的最小个数. 看题后的第一想法是用广搜+dp,后来提交代码却RE了(应该不会的).后来用枚举试了一下,还是RE.所以才想到是不是数组开小了一点 ...
- uva 10306 简单DP
题意: 给n种硬币和一个面值s. 每种硬币有两种价值,并且有无限个,求能满足第一种价值i * i + j * j = s * s的最少硬币数. 解析: 先dp出每种情况下i,j用的最少银币,然后暴力搞 ...
最新文章
- combobox 怎么实现对listview的类别查询_通过 Django Pagination 实现简单分页
- windows云服务器价格_服务器windows2008价格
- Spring Cloud Security:Oauth2结合JWT使用
- mac 环境变量设置
- 从零开始,做一个NodeJS博客(四):服务器渲染页面与Pjax
- objectdatasouce的温故
- 27岁后月薪低于8K,会被淘汰吗?
- Spring MVC 中集成 Apache Shiro 安全框架
- 稀疏矩阵计算器(三元组实现矩阵加减乘法)
- DataStore的基础用法
- 关于数据库可变长字符串类型长度设计问题:慷慨是不明智的
- spider_study 1
- 1072 开学寄语 Python实现
- 编写一个程序,完成字符大小写的转换。
- 入职百度第二周,我知道了这些
- 书记员计算机操作基础知识考试,书记员打字考试怎么考?有哪些形式?
- Nodejs内存溢出原因
- 70个JavaScript面试问题
- MailKit和MimeKit 收发邮件
- 【RocketMQ】 官方运维管理命令mqadmin使用手册(讲解+实操)