杭电2046

#include<stdio.h>

int sum(int n)

{

	if(n>2)

		return sum(n-1)+sum(n-2);

	else

		return n;

}

int main()

{

	int n;

	while(scanf("%d",&n)!=EOF)

	{

		printf("%d\n",sum(n));

	}

	return 0;

}

这上面这种并没有通过,下面这个才是通过了的方法

#include<iostream>

int main()

{

	using namespace std;

	__int64 a[51]={0,1,2},n;

	for(int i=3;i<=50;i++)

	    a[i]=a[i-1]+a[i-2];

	while(cin>>n)

	{

		cout<<a[n]<<endl;

	}



}

  

你可能感兴趣的:(杭电)