CF1214A

题意:

有n个卢布,要换成美元和欧元,使手上剩余的卢布最少。一美元价值d卢布,一欧元价值e卢布。

解法:

可以看成只有两个没有代价的可以无限取的物品的完全背包。

CODE:

#include<bits/stdc++.h>

#define LL long long
#define N 100000010 using namespace std; int n,d,e,cnt,dp[20];
bool vis[N]; const int dollar[50] = {0, 1, 2, 5, 10, 20, 50, 100};
const int eu[50] = {0, 5, 10, 20, 50, 100, 200}; inline void init() {
for(int i = 1; i <= 7; i++)
dp[++cnt] = d * dollar[i];
for(int i = 1; i <= 6; i++)
dp[++cnt] = e * eu[i];
vis[0] = 1;
} int main() {
scanf("%d%d%d",&n,&d,&e);
init();
for(int i = 1; i <= cnt; i++) {
for(int j = dp[i]; j <= n; j++) {
if(vis[j - dp[i]]) vis[j] = 1;
}
}
for(int i = n; i >= 0; i--) {
if(vis[i] == 1) {
printf("%d\n", n - i);
break;
}
}
return 0;
}

CF1214A的更多相关文章

随机推荐

  1. 【shell脚本】$ 在shell脚本中的使用

    shell脚本中 '$' 与不同的符号搭配其表示的意义也会不同 特殊标志符 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数. 例如,第一个参数是$1,第二个 ...

  2. 三角形示例(兼容IE6)

    html代码: <!--三角形的绘制--> <div class="sanjiao"></div> css代码: .sanjiao{ width ...

  3. js循环及for-in , for-of的区别

    循环 字符串遍历:可通过for-of遍历字符串 for-in:遍历对象自身可继承可枚举属性 Object.keys():返回对象自身可枚举属性的键组成的数组 Object.getOwnProperty ...

  4. Oracle11g数据库导入Oracle10g操作成功

    转自:https://wenku.baidu.com/view/1b652b57f7ec4afe04a1dfb8.html

  5. json —— pickle 的序列化和反序列化

    前言json的序列化和反序列化 1, json 只能序列化简单的数据类型,如,列表,字典,字符串,等简单的类型,不能序列化复杂的类型. 2, json 是支持所有的语言的,多以我们跨语言的时候都是用j ...

  6. jquery.js:9600 POST http://127.0.0.1:8000/news/1/comments/ 500 (Internal Server Error)

    什么情况? 代码报错了....查询 语句错误  看 编译提示. 数据 查询 语句的问题!!!!

  7. Auth2.0 例子【转载】

    本文转载自:https://www.cnblogs.com/flashsun/p/7424071.html 1.引言 本篇文章是介绍OAuth2.0中最经典最常用的一种授权模式:授权码模式 非常简单的 ...

  8. maven常用命令参数

    整理了一些maven常用命令参数,以便参考:参考了maven官网和网上其他一些maven追随者的文件,不在此一一列举,但表示感谢! mvn命令参数 mvn -v, --version 显示版本信息; ...

  9. Python借助argv和input()制作命令行工具

    命令行执行.py文件并传递参数 代码示例如下,将参数解包 from sys import argv import requests import json import time script, us ...

  10. 0003SpringBoot整合SpringDataJPA

    SpringBoot整合SpringDataJpa步骤如下: 1.添加data-jpa起步依赖(pom.xml) 2.添加数据库驱动坐标.添加Junit起步依赖(pom.xml) 3.添加数据库连接信 ...