public class deadline { int score; int day; public deadline(int score,int day) { this.score = score; this.day = day; } public int getScore() { return score; }}
import java.util.Arrays;import java.util.Comparator;import java.util.Scanner;public class test { public static void Sort(deadline[] overdays) { Arrays.sort(overdays, new Comparator < deadline > () { public int compare(deadline o1, deadline o2) { return (
import java.util.Scanner;public class deadline { public static int maxinarr(int[] a, int len) { int max = a[0]; for (int i = 0; i < len; i++) { if (max < a[i]) max
#include<iostream>using namespace std;//定义结构体用来存放题目分数及截止日期struct sdata{ int score; int deadline;};//用来给结构体内数据按照成绩排序 void arrSort(sdata* pData, int length){ sdata temp; for (int i = 0; i < length; i++
#include <iostream>using namespace std;//将两个数组按照前面数组的降序排列(数组a,数组b,数组长度len)void swaparr(int a[], int b[], int len){ for(int i=0;i<len;i++){ for(int j=0;j<len-1
int
)(o2.
getScore
()
-
o1.score);
}
});
}
public static void main(String args[]) {
int n, a, b, number = 0, count = 0;
Scanner input = new Scanner(System.in);
n = input.nextInt();
if (n == 0) {
System.out.println("0");
}
deadline[] overdays = new deadline[n];
for (int i = 0; i < n; i++) {
overdays[i] = new deadline(input.nextInt(), input.nextInt());
}
input.close();
Sort(overdays);
int max = overdays[0].day;
for (int i = 1; i < n; i++) {
if (max < overdays[i].day)
max = overdays[i].day;
}
int[] days = new int[max + 1];
for (int i = 0; i <= max; i++)
days[i] = 1;
for (int i = 0; i < n; i++) {
if (days[overdays[i].day] == 1) {
number += overdays[i].score;
days[overdays[i].day] = 0;
} else {
for (int j = overdays[i].day - 1; j > 0; j--) {
if (days[j] == 1) {
number += overdays[i].score;
days[j] = 0;
break;
}
}
}
}
System.out.println(number);
}
}
=
a[i];
}
return max;
}
public static void swaparr(int a[], int b[], int len) {
int k;
for (int i = 0; i < len; i++) {
for (int j = 0; j < len - 1; j++) {
if (a[j] < a[j + 1]) {
k = a[j];
a[j] = a[j + 1];
a[j + 1] = k;
k = b[j];
b[j] = b[j + 1];
b[j + 1] = k;
}
}
}
}
public static boolean judge(int day[], int data[], int n) {