import java.util.Scanner;
public class h2048 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
long []a=new long[21];
long []n=new long[21];
a[1]=0;
a[2]=1;
a[3]=2;
int i;
double f;
for(i=4; i<=20; i++)
{
a[i]=(i-1)*(a[i-1]+a[i-2]);
}
n[0]=1;
for(i=1; i<=20; i++)
{
n[i]=n[i-1]*i;
}
int t,c;
Scanner cin=new Scanner(System.in);
c=cin.nextInt();
while(c!=0)
{
c--;
t=cin.nextInt();
f=a[t]/(double)n[t]*100;
System.out.println(String.format("%.2f", f)+"%");
} }}编译时说
Exception in thread "main" java.lang.Error: 无法解析的编译问题:
类型 String 中的方法 format(String, Object[])对于参数(String, double)不适用 at h2048.main(h2048.java:33)
就是最后一行的地方。
应该可以自动转换的,昨天还能运行,今天就出问题了,真奇怪。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货