首页 > 试题广场 >

题目标题: e 数列

[问答题]

题目标题:

e 数列

题目描述:

e(1)=e(2)=1, e(n)=(n-1)*e(n-1)+(n-2)*e(n-2) (n>2) 称为e数列,每一个e(n) (n=1,2,)称为e数。求[1m]之内: (1)最大的e数。 (2)e数的数目

输入描述:

输入一个整数,表示m的值,m<300000;

输出描述:

输出两个整数,第一个表示最大的e数,第二个表示e数的数目;

样式输入:

30000

样式输出:

16687

8

#include<stdio.h>
#include<math.h>
#include<string.h>
int e(int n)
{
if(n==1||n==2)
return 1;
else
return (n-1)*e(n-1)+(n-2)*e(n-2);
}
int main()
{
int i,m,t;
scanf("%d",&m);
for(i=1;;i++)
{
t=e(i);
if(t>m)
break;
}
printf("%d\n%d",e(i-1),i-1);
return 0;
}

发表于 2017-05-17 04:38:05 回复(0)