Loading......Next.

生来介为忙一场

 

大菲波数 hdoj 1715

用了一个下午终于AC了,不过代码很笨拙,不过还是很有成就感~~~~~~~~
不过这个大数相加处理得不怎么好,注释就不上了,代码感觉不怎么好,有待学习~!!

#include<stdio.h>
#include
<stdlib.h>
#include
<string.h>
int main()
{
    
char s1[1000],s2[1000],sum[1000][1000];
    
int n,m,len,len1,len2,i,*p,k=1000,w;
    n
=3;
    strcpy(sum[
1],"1");
    strcpy(sum[
2],"1");
       strcpy(s1,
"1");
       strcpy(s2,
"1");
    
while(k--)
    
{
            
while(n<=k)
            
{  
                len1
=strlen(s1),len2=strlen(s2);
                len
=len2+2;
                p
=(int *)malloc(len*sizeof(int));
                
for(i=0;i<len;i++)
                    p[i]
=0;
                
if(len1==len2)
                       
for(i=len2;i>0;i--)
                        
*(p+i)=(*(s1+i-1)-48)+(*(s2+i-1)-48);
                
else
                
{
                     
for(i=len2;i>1;i--)
                        
*(p+i)=(*(s1+i-2)-48)+(*(s2+i-1)-48);
                    
*(p+i)=(*(s2+i-1))-48;
                }

                
for(i=len2;i>0;i--)
                
{
                    
*(p+i)+=*(p+i+1)/10;
                    
*(p+i-1)+=*(p+i)/10;
                    
*(p+i)=*(p+i)%10;
                }

                strcpy(s1,s2);
                
if(p[0]==0)
                   
for(i=0;i<len2;i++)
                   
{
                       s2[i]
=*(p+i+1)+'0';
                   }

                
else
                   
for(i=0;i<=len2;i++)
                   
{
                       s2[i]
=*(p+i)+'0';
                   }

                s2[i]
='\0';
                strcpy(sum[n],s2);
                n
++;
            }

    }

    
while(scanf("%d",&w)!=EOF)
    
{
        
for(i=0;i<w;i++)
        
{
            scanf(
"%d",&m);
            
if(m==1||m==2)
                 printf(
"1\n");
            
else
                puts(sum[m]);
        }

    }

    
return 0;
}


 

posted on 2011-06-18 17:30 bersaty 阅读(407) 评论(0)  编辑 收藏 引用 所属分类: HDOJ 做题报告


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


导航

统计

常用链接

留言簿

随笔分类

随笔档案

友情链接

搜索

最新评论

阅读排行榜

评论排行榜