1. 程式人生 > 其它 >洛谷P6205 [USACO06JAN]Dollar Dayz S 題解

洛谷P6205 [USACO06JAN]Dollar Dayz S 題解

技術標籤:python

description:

\text{FJ} 到商場買工具。商場裡有 K 種工具 ,價格分別為 1,2,\ldots,K 元。 \text{FJ} 手裡有 N 元 ,必須花完。他有多少種購買方案呢?
  • 1 \leq N \leq 10001 \leq K \leq 100

solution:

裸完全揹包問題。

不過需要用到

\text{__int128}

code:

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
__int128 f[1005];
int print(__int128 x) 
{
	if(x == 0) return putchar
(48) + putchar(10); if(x >= 10) print(x / 10); putchar(x % 10 + 48); } int main() { int n,m; scanf("%d%d",&n,&m); f[0]=1; for(int i=1;i<=m;i++) { for(int j=i;j<=n;j++) { f[j]+=f[j-i]; } } print(f[n]); return 0; }