HDU-5981-Guess the number-规律

来源:互联网 发布:程序员试用期转正申请 编辑:程序博客网 时间:2024/06/08 13:26

答案是打表发现有规律。
然而没有看懂网上DP打表的过程。。。
在vj上看到了别人的代码。真真好。

#include <iostream>#include <cstdio>#include <cstdlib>#include <cstdio>using namespace std;const int maxn=4010;const int mod=100000073;int c[maxn][maxn];int ra[maxn*maxn];int rb[maxn*maxn];int main(){     for(int i=0;i<maxn;i++)       {c[i][0]=c[i][i]=1;        //c[i][i]=1;        }       for(int i=1;i<maxn;i++)          for(int j=1;j<i;j++)           c[i][j]=(c[i][j-1]+c[i-1][j])%mod;      int tot=1;      for(int i=1;i<maxn;i++)          for(int j=i-1;j>=0;j--)      {    ra[tot]=i;           rb[tot]=c[i][j];           tot++;      }      int a,b;         for(int i=1;i<20;i++)            cout<<ra[i]<<" "<<rb[i]<<endl;             //for(int j=1;j<tot)    while(scanf("%d%d",&a,&b)==2)    {  int n=b-a+1;       printf("%d %d\n",ra[n],rb[n]);    }    return 0;}