题目名称:
大富翁游戏
题目描述:
大富翁游戏,玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步。求玩家走到第n步(n<=骰子最大点数且是方法的唯一入参)时,总共有多少种投骰子的方法。
输入描述:
输入包括一个整数n,(1 ≤ n ≤ 6)
输出描述:
输出一个整数,表示投骰子的方法
输入:
6
输出:
6
题意:
题目描述
题解:
随便算一算就出来了
其实也就是f(n)=2^(n-1).
代码:
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int f[10] = {
0,1,2,4,8,16,32};
int main(){
int n;
while(scanf("%d",&n)!=EOF){
printf("%d\n",f[n]);
}
return 0;
}
题目名称:
拼凑钱币
题目描述:
给你六种面额 1、5、10、20、50、100 元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0~10000的非负整数)的不同组合的个数。
输入描述:
输入包括一个整数n(1 ≤ n ≤ 10000)
输出描述:
输出一个整数,表示不同的组合方案数
输入:
1
输出:
1
题意:
题目描述
题解:
背包裸题
代码:
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn = 10000 + 5;
ll dp[maxn];
int main(){
int n;