日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

USACO 2.3 货币系统(背包/生成函数)

發布時間:2025/3/15 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 USACO 2.3 货币系统(背包/生成函数) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

母牛們不但創建了他們自己的政府而且選擇了建立了自己的貨幣系統。
[In their own rebellious way],他們對貨幣的數值感到好奇。
傳統地,一個貨幣系統是由1,5,10,20 或 25,50, 和 100的單位面值組成的。
母牛想知道有多少種不同的方法來用貨幣系統中的貨幣來構造一個確定的數值。
舉例來說, 使用一個貨幣系統 {1,2,5,10,...}產生 18單位面值的一些可能的方法是:18x1, 9x2, 8x2+2x1, 3x5+2+1,等等其它。
寫一個程序來計算有多少種方法用給定的貨幣系統來構造一定數量的面值。
保證總數將會適合long long (C/C++) 和 Int64 (Free Pascal)。

Input

貨幣系統中貨幣的種類數目是 V 。 (1<= V<=25)
要構造的數量錢是 N 。 (1<= N<=10,000)
第 1 行: 二整數, V 和 N
第 2 ..V+1行: 可用的貨幣 V 個整數 (每行一個 每行沒有其它的數)。

Output

單獨的一行包含那個可能的構造的方案數。
末尾有空行

Sample Input

3 10 1 2 5

Sample Output

10 分析 f[j]:=f[j]+f[j-a[i]];
  • var n,m,i,j:longint; a:array[0..1000]of longint; f:array[0..10000]of qword; beginreadln(n,m);for i:=1 to n doread(a[i]);fillchar(f,sizeof(f),0);f[0]:=1;for i:=1 to n dofor j:=a[i] to m dof[j]:=f[j]+f[j-a[i]];write(f[m]); end.

轉載于:https://www.cnblogs.com/YYC-0304/p/9500136.html

總結

以上是生活随笔為你收集整理的USACO 2.3 货币系统(背包/生成函数)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。