Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

看似很水,不过却做了很长时间...

Posted by iscubus at 2011-10-18 13:59:54 on Problem 1001
/*
Problem: 1001		User: iscubus
Memory: 400K		Time: 0MS
Language: GCC		Result: Accepted
*/

# include <stdio.h>
# include <string.h>

typedef struct Num
{
	int n[1000];
	int l,point;
} num;

num a,b,c;
char s[20],s1[20];
int time;

void cal()
{
	int i,j;
	memset(c.n,0,sizeof(c.n));
	for(i=1;i<=a.l;i++)
		for(j=1;j<=b.l;j++)
		{
			c.n[i+j-1]+=a.n[i]*b.n[j];
		}
	c.l=a.l+b.l;
	for(i=1;i<=c.l;i++)
	{
		c.n[i+1]+=c.n[i]/10;
		c.n[i]%=10;
	}
	c.point=a.point+b.point;
	if(c.point<c.l&&c.n[c.l]==0)	c.l--;
	a=c;
}

int main()
{
	int i,j,l,l1,k,x,p,flag,f1;
	//freopen("in","r",stdin);
	while(scanf("%s%d",s,&time)!=EOF)
	{
		if(time==0)
		{
			printf("1\n");
			continue;
		}
		l=strlen(s);j=1;
		flag=1;f1=0;
		for(i=0;i<l;i++)
			if(s[i]!='0'&&s[i]!='.')
			{
				flag=0;
			}else if(s[i]=='.')	f1=1;
		if(flag)
		{
			printf("0\n");
			continue;
		}
		flag=1;a.point=-2;
		i=0;j=l-1;
		while(s[i]=='0')	i++;
		if(f1)
			while(s[j]=='0')	j--;
		if(s[i]=='.')
		{
			x=1;
			for(k=j;k>i;k--)
			{
				a.n[x]=s[k]-'0';
				x++;
			}
			a.point=x-1;
			a.l=j-i;
		}else if(s[j]=='.')
		{
			x=1;
			for(k=j-1;k>=i;k--)
			{
				a.n[x]=s[k]-'0';
				x++;
			}
			a.point=-1;
			a.l=j-i;
		}else 
		{
			x=1;
			for(k=j;k>=i;k--)
			{
				if(s[k]=='.')
				{
					a.point=x-1;
				}else
				{
					a.n[x]=s[k]-'0';
					x++;
				}
			}
			if(a.point==-2)
				a.l=j-i+1;
			else	a.l=j-i;
		}
		b=a;
		time--;
		while(time--)	cal();
		for(i=a.l;i>0;i--)
		{
			if(i==a.point)	putchar('.');
			printf("%d",a.n[i]);
		}
		putchar('\n');
	}
	return 0;
}

		
		

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator