- #include <bits/stdc++.h>
- using namespace std;
- long long drop(int n, int m) {
- long long dp[11][1001]={0}; //假設n<=10且m<=1000
- dp[0][0]=1;
- for (int i=1;i<=n;i++)
- {
- for (int j=1;j<=m;j++)
- {
- for (int k=1; k <= 6;k++)
- {
- if (j>=k)
- {
- dp[i][j]+=dp[i-1][j-k];
- }
- }
- }
- }
- return dp[n][m];
- }
- int main(){
- int n,m;
- cin>>n>>m;
- cout<<drop(n,m)<<endl;
- return 0;
- }
複製代碼 |