| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
God save me.那位大哥告诉我为什么用Java提交的程序,为什么常常RuntimeError,特别是在处理一些以零结尾的问题,例如:2640,程序如下:
import java.util.*;
public class Main
{
private int halfCircleNum;
private double halfCircles[];
public static void main(String args[])throws Exception
{
Scanner cin=new Scanner(System.in);
while(true)
{
int halfCircleNum;
halfCircleNum=cin.nextInt();
if(halfCircleNum==0) break;
double halfCircles[]=new double[halfCircleNum];
for(int i=0;i<halfCircleNum;i++)
halfCircles[i]=cin.nextDouble();
new Main(halfCircleNum,halfCircles);
}
}
public Main(){};
public Main(int halfCircleNum,double halfCircles[])
{
this.halfCircleNum=halfCircleNum;
this.halfCircles=new double[halfCircleNum];
System.arraycopy(halfCircles,0,this.halfCircles,0,this.halfCircleNum);
this.output();
}
public void bubbleSort()
{
boolean flag=true;
for(int i=halfCircleNum-1;flag&&i>0;i--)
{
flag=false;
for(int j=0;j<i;j++)
if(halfCircles[j]>halfCircles[j+1])
{
double temp=halfCircles[j];
halfCircles[j]=halfCircles[j+1];
halfCircles[j+1]=temp;
flag=true;
}
}
}
public boolean judge()
{
this.bubbleSort();
int i,j,k;
for(i=0;i<halfCircleNum-1;i++)
if(this.halfCircles[i]==this.halfCircles[i+1]) return true;
for(i=2;i<this.halfCircleNum-1;i++)
{
for(j=0;j<this.halfCircleNum-1;j++)
{
double sum=0.0;
for(k=j;k<i+j;k++) sum+=this.halfCircles[i+j];
if(sum>=this.halfCircles[i+j+1]) return true;
}
}
return false;
}
public void output()
{
if(this.judge()) System.out.println("YES");
else System.out.println("NO");
}
}
望不吝赐教!谢~~~
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator