文章目录
- 蓝桥杯倒计时第九天,每日一题打卡
- 一、P1093 [NOIP2007 普及组] 奖学金
- 二、解题步骤
- 总结
蓝桥杯倒计时第九天,每日一题打卡
今天上了一天的课,忙里偷闲打个卡
一、P1093 [NOIP2007 普及组] 奖学金
java优先级排序的一道题
二、解题步骤
没有什么可说的了,直接结构体排序
import java.math.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Comparator;
import java.util.HashSet;
import java.util. Iterator;
import java.util.List;
import java.util.Scanner;
import java.util.Set;class node
{
int num;int x;int y;int z;int sum;
}
class mycompare implements Comparator<node>{
public int compare(node a,node b){
if(a.sum==b.sum){
if(a.x==b.x){
return a.num-b.num;}else {
return b.x-a.x;} }else {
return b.sum-a.sum;}}
}
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);int n;n=cin.nextInt();node []a=new node [500];for(int i=1;i<=n;i++){
a[i]=new node ();a[i].num=i;a[i].x=cin.nextInt();a[i].y=cin.nextInt();a[i].z=cin.nextInt();a[i].sum=a[i].x+a[i].y+a[i].z;}Arrays.sort(a,1,n+1,new mycompare());for(int i=1;i<=5;i++){
System.out.println(a[i].num+" "+a[i].sum);}}
}
总结
之前学习Java的时候写过具体的结构体排序的代码
Java结构体+排序