Yui的狗窝
Yui的狗窝
hihocoder 1339 Dice Possibility 动态规划

原题:https://hihocoder.com/problemset/problem/1339
题目大意:求掷N次筛子可得到M的概率。
一道动态规划的题目,求递推式的过程比较简单(我是用的数学归纳法)。在代码实现的过程中要注意数据类型。

#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
const int MAXN=101;
const int MAXM=601;
int n,m;
double f[MAXN][MAXM];//注意数据类型
void table()
{
    f[1][1]=1;f[1][2]=1;f[1][3]=1;
    f[1][4]=1;f[1][5]=1;f[1][6]=1;
    for(int i=2;i<maxn;i++)
    {
        int tar=i*6;
        for(int j=i;j<=tar;j++)
        {
            int flag1=j,flag2=0;
            double tem=0.0;//注意数据类型
            while(--flag1&&flag2<6)
            {
                tem+=f[i-1][flag1];
                flag2++;
            }
            f[i][j]=tem;
        }
    }
}
int main()
{
    table();
    while(scanf("%d%d",&m,&n)!=EOF)
    {
        double nume=pow(6,m);
        double res=f[m][n]/nume;
        printf("%.2f\n",res*100);
    }
}
没有标签
首页      算法训练      hihocoder 1339 Dice Possibility 动态规划
https://secure.gravatar.com/avatar/d0fe7f1b17d5e9122db921e3a8cc327f?s=256&d=mm&r=g

Suzumiya, Yui

文章作者

发表评论

textsms
account_circle
email

Yui的狗窝

hihocoder 1339 Dice Possibility 动态规划
原题:https://hihocoder.com/problemset/problem/1339 题目大意:求掷N次筛子可得到M的概率。 一道动态规划的题目,求递推式的过程比较简单(我是用的数学归纳法)。在代码实现的过程中要注…
扫描二维码继续阅读
2017-10-31


没有激活的小工具