编程语言
首页 > 编程语言> > Vijos——小飞侠的游园方案(java实现)

Vijos——小飞侠的游园方案(java实现)

作者:互联网

听好了,输入格式是第一行一个正整数N(1<=N<=100)表示总共的娱乐项目数;第二行一个正整数表示规定的时间t(0<t<1000);下面有N行,其中第i+2行有两个正整数fi(0<=fi<=100)和ti(0<ti<=100),分别表示对项目i的“喜欢度”和它所耗费的时间。输出的时候在第一行输出最大的“喜欢度”之和,下面给你一个样例:

样例1

样例1
样例输入1
3
5
1 2
5 5
4 3
Copy
样例输出1
5

import java.util.*;                //1025小飞侠的游园方案
public class Main{               
public static void main(String[] args){
   Scanner rd=new Scanner(System.in); 
   int a=rd.nextInt();
   int time=rd.nextInt();
   int [] arr=new int[time+1];
   for(int i=0;i<a;i++) {
	   int xhdu=rd.nextInt();
	   int time1=rd.nextInt();
	   for(int j=time;j>0;j--) {
		   if(j>=time1) {
			   arr[j]=Math.max(arr[j], arr[j-time1]+xhdu);
		   }
	   }
   }
   System.out.println(arr[time]);
}
}

作者:KJ.JK
本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。
文章对你有所帮助的话,欢迎给个赞或者 star 呀,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习呀

标签:arr,java,交流学习,int,样例,rd,time,小飞侠,Vijos
来源: https://blog.csdn.net/m0_47384542/article/details/116459737