码迷,mamicode.com
首页 > 其他好文 > 详细

hdu 1023 Train Problem II

时间:2015-10-29 23:12:07      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:

卡特兰数的应用 :卡特兰数参考kuangbing总结http://www.cnblogs.com/kuangbin/archive/2012/03/21/2410516.html。

大数的运算

hdu题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1023

 1 #include<algorithm>
 2 #include<stdlib.h>
 3 #include<string.h>
 4 #include<iostream>
 5 #include<stdio.h>
 6 using namespace std;
 7 int a[101][505];//数组只要开a[101][100];
 8 int main(void)
 9 {
10     int n,i,j,k,p,q;
11     a[1][500]=1;
12     a[2][500]=2;
13     a[3][500]=5;
14     for(i=4; i<=100; i++)
15     {
16         int v=4*i-2;
17         int u=i+1;
18 
19         for(j=500; j>=0; j--)
20         {
21             a[i][j]=v*a[i-1][j];
22         }
23         q=0;
24         for(j=500; j>=0; j--)
25         {
26             int y=(a[i][j]+q)%10;
27             q=(a[i][j]+q)/10;
28             a[i][j]=y;
29         }//模拟乘法
30         for(j=0; j<500; j++)
31         {
32             if(a[i][j]!=0)
33             {
34                 break;
35             }
36         }
37 
38         int kk=0;
39         int vv=0;
40         for(p=j; p<=500; p++)
41         {
42             int z=(a[i][p]+vv*10)/u;
43 
44             vv=(a[i][p]+vv*10)%u;
45             a[i][p]=z;
46 
47         }//模拟除法
48 
49 
50     }
51     while(scanf("%d",&n)!=EOF)
52     {
53         for(i=0; i<=500; i++)
54         {
55             if(a[n][i]!=0)
56             {
57                 break;
58             }
59         }
60         for(j=i; j<=500; j++)
61         {
62             printf("%d",a[n][j]);
63         }
64         printf("\n");
65     }
66 
67     return 0;
68 
69 }

 

hdu 1023 Train Problem II

标签:

原文地址:http://www.cnblogs.com/zzuli2sjy/p/4922030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!