hdu 1009 fatmouse trade菜鸟问题

gulus25 2015-10-29 12:15:34
问题如下:



本人代码如下:
package a1009;

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

public class Main {
public static void main(String[] args){

Scanner cin = new Scanner(System.in);
int catFood, rooms, jb, redcatfood, sum;
double total;
Main m = new Main();
while(true){
catFood = cin.nextInt();
rooms = cin.nextInt();
if(catFood==-1&&rooms==-1){System.exit(0);}
Pair[] array = new Pair[rooms];
for(int i=0; i< rooms; i++){
jb = cin.nextInt();
redcatfood = cin.nextInt();
Pair p = m.new Pair(i, (1.0*jb)/(1.0*redcatfood),redcatfood);
array[i] = p;
}
Arrays.sort(array, m.new PairComparator());

total = 0;
sum = catFood;
for(int j=0;j<rooms;j++){
if(array[j].getAmount()>sum){
total += sum*array[j].getRatio();
System.out.println(String.format("%1$.3f", total));
break;
}else{
total += array[j].getAmount()*array[j].getRatio();
sum -= array[j].getAmount();
}
}
}
}


public class Pair{
private int index;
private double ratio;
private int amount;

public Pair(int index, double ratio, int amount){
this.index = index;
this.ratio = ratio;
this.amount = amount;
}

public int getIndex(){
return this.index;
}

public double getRatio(){
return this.ratio;
}

public int getAmount(){
return this.amount;
}
}

public class PairComparator implements Comparator<Pair>{

@Override
public int compare(Pair o1, Pair o2) {
// TODO Auto-generated method stub
if(o1.getRatio()<o2.getRatio()){
return 1;
}else if(o1.getRatio()>o2.getRatio()){
return -1;
}else{
return 0;
}
}


}



}
过了简单的测试,但submit后还是wrong answer,不知错在哪儿了。求高人解答
...全文
85 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧