原题网址

代码已经写出来了,自己测试的时候没有问题,提交上去之后反馈了我一个Runtime error  一口老血啊!

找了半天还是没找到可能越界啊啥的地方

import java.util.Scanner;
import java.util.Arrays;
import java.util.Queue;
import java.util.LinkedList;
//import java.math.*;
//import java.util.Arrays;
public class Main {
public static void main(String[] args){
Queue<Question> question=new LinkedList<Question>();
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
while(n!=0){
int h=sc.nextInt();
int fi[]=new int[n];
int di[]=new int[n];
int ti[]=new int[n-1];
for(int i=0;i<n;i++) fi[i]=sc.nextInt();
for(int i=0;i<n;i++) di[i]=sc.nextInt();
for(int i=0;i<n-1;i++)ti[i]=sc.nextInt()*5;
Question qu=new Question(n,h,fi,di,ti);
question.add(qu);
n=sc.nextInt();
}
sc.close();
while(!question.isEmpty()){
Question next=question.remove();
next.doSomething();
if(next.answer!=null)
System.out.print(next.answer[0]*5);
for(int i=1;i<next.answer.length;i++)
System.out.print(", "+next.answer[i]*5);
//for(int i:next.answer)
//System.out.print(i*5+",");
System.out.println("\nNumber of fish expected: "+next.number+"\n");
//System.out.println(next.ti[next.ti.length-1]);
}
}
}
class Question{
int n;
int h;
int[] fi;
int[] di;
int[] ti;
int[] answer;
int number;//用于保存最多可以钓多少鱼
private int temp;
Question(int a,int b,int[] c,int[] d,int [] e){
n=a;h=b;fi=Arrays.copyOf(c,c.length);di=Arrays.copyOf(d, d.length);ti=Arrays.copyOf(e, e.length);
}
public void doSomething(){
int max=0;int[] temp0 = null;
for(int i=1;i<=n;i++){
int x=h*60;
for(int j=0;j<i-1;j++) x-=ti[j];
int[] temp1=getBest(i,x,Arrays.copyOf(fi, i),Arrays.copyOf(di, i));
if(temp>max){
max=temp;
temp0=temp1;
}
}
number=max;
answer=temp0;
}
private int[] getBest(int n,int h,int[] fi,int[] di){
temp=0;int[] list=new int[this.n];
for(int i=0;i<h;i+=5){
int max=0;int flag=0;
for(int j=0;j<n;j++){
if(max<fi[j]){
flag=j;max=fi[j];
}
}
temp+=fi[flag];
list[flag]++;
//h-=5;
fi[flag]=fi[flag]>di[flag]?fi[flag]-di[flag]:0;
} return list;
}
}

Gone Fishing的更多相关文章

  1. ZOJ 1015 Fishing Net(弦图判定)

    In a highly modernized fishing village, inhabitants there make a living on fishery. Their major tool ...

  2. bzoj 1242: Zju1015 Fishing Net 弦图判定

    1242: Zju1015 Fishing Net弦图判定 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 214  Solved: 81[Submit ...

  3. Poj/OpenJudge 1042 Gone Fishing

    1.链接地址: http://bailian.openjudge.cn/practice/1042/ http://poj.org/problem?id=1042 2.题目: Gone Fishing ...

  4. POJ 1042 Gone Fishing (贪心)(刘汝佳黑书)

    Gone Fishing Time Limit: 2000MS   Memory Limit: 32768K Total Submissions: 30281   Accepted: 9124 Des ...

  5. uva757 - Gone Fishing(馋)

    题目:uva757 - Gone Fishing(贪心) 题目大意:有N个湖泊仅仅有一条通路将这些湖泊相连. 每一个湖泊都会给最開始5分钟间隔内能够调到的鱼(f).然后给每过5分钟降低的鱼的数量(d) ...

  6. ●BZOJ 1006 [HNOI2008]神奇的国度(弦图最小染色数)○ZOJ 1015 Fishing Net

    ●赘述题目 给出一张弦图,求其最小染色数. ●题解 网上的唯一“文献”:<弦图与区间图>(cdq),可以学习学习.(有的看不懂) 摘录几个解决改题所需的知识点: ●子图和诱导子图(一定要弄 ...

  7. Cocos2d-X开发教程-捕鱼达人 Cocos2-x development tutorial - fishing talent

    Cocos2d-X开发教程-捕鱼达人 Cocos2-x development tutorial - fishing talent 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱 ...

  8. CSU 1859 Gone Fishing(贪心)

    Gone Fishing [题目链接]Gone Fishing [题目类型]贪心 &题解: 这题要先想到枚举走过的湖,之后才可以贪心,我就没想到这,就不知道怎么贪心 = = 之后在枚举每个湖的 ...

  9. Gone Fishing(贪心)

    Gone Fishing John is going on a fising trip. He has h hours available (1 ≤ h ≤ 16), and there are n ...

  10. LightOJ1106 Gone Fishing

    Gone Fishing John is going on a fishing trip. He has h hours available, and there are n lakes in the ...

随机推荐

  1. php学习笔记-关联数组

    传统的数组定义方法如下: <?php $names[0]= 'chinese'; $names[1]= 'math'; $names[2]= 'english'; echo $names[2]; ...

  2. c++ 类中模版成员函数

    C++函数模版与类模版. template <class T> void SwapFunction(T &first, T &second){ }//函数模版 templa ...

  3. p3203 弹飞绵羊

    传送门 分析 基本的lct操作,建一个点N表示弹飞出去的点,每次输出N的左子树的大小即可 代码 #include<iostream> #include<cstdio> #inc ...

  4. ZROI2018提高day5t2

    传送门 分析 考场上傻了,写了个树剖还莫名weila...... 实际就是按顺序考虑每个点,然后从他往上找,一边走一边将走过的边染色,如果走到以前染过色的边就停下.对于每一个a[i]的答案就是之前走过 ...

  5. C++笔记--名字空间和异常

    名字空间 成员函数可以在名字空间的定义里去声明,然后再去采用一种定义方式例如:namespace__name::member_name的方式去定义这个成员函数 namespace parser{ do ...

  6. POJ 2686 Traveling by Stagecoach (状压DP)

    题意:有一个人从某个城市要到另一个城市, 有n个马车票,相邻的两个城市走的话要消耗掉一个马车票.花费的时间呢,是马车票上有个速率值 ,问最后这个人花费的最短时间是多少. 析:和TSP问题差不多,dp[ ...

  7. grep多条件和sed合并两行

    grep多条件,最简单的方式是使用正则表达式: egrep "条件1|条件2"   sed合并两行,将 1 2 3 4 合并成: 1 2 3 4 sed '$!N;s/\n/\t/ ...

  8. 【LeetCode】将罗马数字转换成10进制数

    Roman to Integer Given a roman numeral, convert it to an integer. 首先介绍罗马数字 罗马数字共有七个,即I(1),V(5),X(10) ...

  9. 2015年第六届蓝桥杯省赛T10 生命之树(树形dp+Java模拟vector)

    生命之树 在X森林里,上帝创建了生命之树. 他给每棵树的每个节点(叶子也称为一个节点)上,都标了一个整数,代表这个点的和谐值. 上帝要在这棵树内选出一个非空节点集S,使得对于S中的任意两个点a,b,都 ...

  10. 阿里云ECS centos7.2 支持IPv6

    公司的项目因为服务器没有支持IPv6而被appstore给退回来了 第一部分 第一步:编辑 /etc/sysctl.conf 文件,将其中三条禁用IPv6的设置更改为: 第二步:使用命令启动启用IPv ...