比赛 20121107 评测结果 AAAAA
题目名称 三只小猪 最终得分 100
用户昵称 怡红公子 运行时间 0.012 s
代码语言 C++ 内存使用 4.49 MiB
提交时间 2012-11-07 11:19:28
显示代码纯文本
  1. #include<iostream>
  2. #include<cstring>
  3. #include<fstream>
  4. #include<cstdio>
  5. #include<cstdlib>
  6. using namespace std;
  7. ifstream fin("piggy.in");
  8. ofstream fout("piggy.out");
  9.  
  10. int T,n,m;int f[55][55][105]={0},ans[105];
  11.  
  12. void Print(int a[]){
  13. int i=100;
  14. while(i>0&&a[i]==0) i--;
  15. while(i>=0) fout<<a[i--];
  16. fout<<endl;
  17. }
  18.  
  19. void Init(){
  20. for(int i=1;i<=50;++i)
  21. for(int j=1;j<=i;++j)
  22. {
  23. if(j==i||j==1) {f[i][j][0]=1;continue;}
  24. for(int k=0;k<=100;++k)
  25. f[i][j][k]=f[i-1][j][k]*j;
  26. for(int k=0;k<=100;++k)
  27. f[i][j][k]+=f[i-1][j-1][k];
  28. for(int k=0;k<=100;++k)
  29. if(f[i][j][k]>9)
  30. {f[i][j][k+1]+=f[i][j][k]/10;f[i][j][k]%=10;}
  31. }
  32. /* for(int i=1;i<=100;++i)
  33. for(int j=0;j<=i;++j)
  34. {
  35. if(j==i||j==0) {c[i][j][0]=1;continue;}
  36. for(int k=0;k<=100;++k)
  37. c[i][j][k]=c[i-1][j-1][k]+c[i-1][j][k];
  38. for(int k=0;k<=100;++k)
  39. if(c[i][j][k]>9) {c[i][j][k+1]+=c[i][j][k]/10;c[i][j][k]%=10;}
  40. }*/
  41. /* for(int i=1;i<=10;++i,cout<<endl)
  42. for(int j=0;j<=i;++j)
  43. Print(c[i][j]);system("pause"); */
  44. }
  45.  
  46. /*void Chu(){
  47. while(m>1)
  48. {
  49. int tot=0;
  50. for(int i=100;i>=0;--i)
  51. {
  52. int t=ans[i];
  53. ans[i]=(ans[i]+tot*10)/m;
  54. tot=(t+tot*10)%m;
  55. }
  56. m--;
  57. }
  58. }
  59. */
  60. int main()
  61. {
  62. Init();
  63. fin>>T;
  64. while(T>0)
  65. {
  66. T--;
  67. // memset(ans,0,sizeof(ans));
  68. fin>>n>>m;
  69. // if(n==m) {cout<<1<<endl;continue;}
  70. // for(int i=0;i<=100;++i)
  71. // ans[i]=c[n][m][i];
  72. /* int k=n-m;
  73. while(k>0)
  74. {
  75. k--;
  76. for(int i=0;i<=100;++i)
  77. ans[i]*=m;
  78. for(int i=0;i<=100;++i)
  79. if(ans[i]>9) {ans[i+1]+=ans[i]/10;ans[i]%=10;}
  80. }
  81. Chu();*/
  82. Print(f[n][m]);
  83. }
  84. //system("pause");
  85. }