最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 【例 5】Banknotes

C++ 少儿编程 1090浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

【题目描述】

原题来自:POI 2005

Byteotian Bit Bank (BBB) 拥有一套先进的货币系统,这个系统一共有 $n$ 种面值的硬币,面值分别为 $b_1, b_2,cdots , b_n$ 。但是每种硬币有数量限制,现在我们想要凑出面值 $k$,求最少要用多少个硬币。

【输入】

第一行一个数 $n$;

接下来一行 $n$ 个整数 $b_1, b_2,cdots , b_n$ ;

第三行 $n$ 个整数 $c_1,c_2,cdots ,c_n$ ,表示每种硬币的个数;

最后一行一个数 $k$,表示要凑的面值数。

【输出】

第一行一个数表示最少需要付的硬币数。

【输入样例】

3
2 3 5
2 2 1
10

【输出样例】

3

【提示】

数据范围与提示:

对于全部数据,$1≤n≤200,1≤b_1 < b_2 < ⋯ < b_n ≤2×10^4 ,1≤c_i ,k≤2×10^4$ 。

您必须 登录 才能发表评论!