zoj 1883 DP 开始刷大黄DP分类..

    技术2022-05-19  20

    郁闷...这么晚了,,赶紧睡觉...

    另外发现double比long long还长...纠结...WA了数次..

     

    题意就是给你一个数让你找出当中tight words在所有的序列中的比例...数太大了.很纠结.

    贴代码

     

    个人网站打广告:www.lifeintheweb.tk

    #include <stdio.h> #include <math.h> #include <string.h> int main(void) { //freopen("in","r",stdin); //freopen("out2","w",stdout); int k,n; double DP[10][105]; //DP[i][j] 表示当最后一位是i的时候j位一共有多少个; while(scanf("%d %d",&k,&n) != EOF ) { memset(DP,0,sizeof(DP)); for(int i=0;i<=k;i++) DP[i][1] = 1; for(int j=2;j<=n;j++) for(int i=0;i<=k;i++) if(i>0&&i<k) DP[i][j]=DP[i][j]+DP[i-1][j-1]+DP[i+1][j-1]+DP[i][j-1]; else if(i==k) DP[i][j]=DP[i][j]+DP[i-1][j-1]+DP[i][j-1]; else if(i==0) DP[i][j]=DP[i][j]+DP[i+1][j-1]+DP[i][j-1]; double max =0; for(int i=0;i<=k;i++) max += DP[i][n]; for(int i=0;i<n;i++) max/=(double)(k+1); printf("%0.5lf/n",max*100); } return 0; }

    代码写的很幼稚..呵呵...顺便买了几本c的书..补补c,不着急.慢慢来


    最新回复(0)