HDOJ 2048 神、上帝以及老天爷(错排)

2014-11-24 02:44:40 · 作者: · 浏览: 1

标准错排,直接给程序:


[cpp]
/*HODJ2019
作者:陈佳润
2013-04-26
*/
#include
using namespace std;

__int64 A(int n){
int i;
__int64 sum=1;
for(i=1;i<=n;i++)
sum*=i;
return sum;
}

int main(){
__int64 dp[22];
double sum;
int Time,i,n;
dp[0]=0;
dp[1]=0;
dp[2]=1;
for(i=3;i<=20;i++)
dp[i]=(i-1)*(dp[i-1]+dp[i-2]);

cin>>Time;
while(Time--){
cin>>n;
sum=double(dp[n])/double(A(n));
printf("%.2lf%%\n",sum*100);
}
return 0;
}

/*HODJ2019
作者:陈佳润
2013-04-26
*/
#include
using namespace std;

__int64 A(int n){
int i;
__int64 sum=1;
for(i=1;i<=n;i++)
sum*=i;
return sum;
}

int main(){
__int64 dp[22];
double sum;
int Time,i,n;
dp[0]=0;
dp[1]=0;
dp[2]=1;
for(i=3;i<=20;i++)
dp[i]=(i-1)*(dp[i-1]+dp[i-2]);

cin>>Time;
while(Time--){
cin>>n;
sum=double(dp[n])/double(A(n));
printf("%.2lf%%\n",sum*100);
}
return 0;
}