55 lines
1.2 KiB
Java
55 lines
1.2 KiB
Java
package chelper;
|
|
|
|
import java.util.SortedSet;
|
|
import java.util.TreeSet;
|
|
|
|
import io.InputReader;
|
|
import io.OutputWriter;
|
|
import misc.GCJSolution;
|
|
|
|
|
|
public class TaskB extends GCJSolution {
|
|
|
|
public void solve(int testNumber, InputReader in, OutputWriter out) {
|
|
wrapSolve(testNumber, in, out);
|
|
}
|
|
|
|
@Override
|
|
public void solve(int testNumber) {
|
|
int l = in.nextInt();
|
|
SortedSet<Pair> team = new TreeSet<>();
|
|
for (int i = 0; i < l; i++) {
|
|
long count = in.nextLong();
|
|
int exp = in.nextInt();
|
|
team.add(new Pair(count, exp));
|
|
}
|
|
long leftovers = 0;
|
|
for (Pair manager : team) {
|
|
long capacity = manager.count * manager.experience;
|
|
|
|
long canAttach = Math.min(leftovers, capacity);
|
|
|
|
leftovers = manager.count + leftovers - canAttach;
|
|
}
|
|
|
|
int maxExp = team.last().experience;
|
|
|
|
out.println(Math.max(leftovers, maxExp));
|
|
}
|
|
|
|
class Pair implements Comparable<Pair> {
|
|
long count;
|
|
int experience;
|
|
|
|
public Pair(long count, int experience) {
|
|
this.count = count;
|
|
this.experience = experience;
|
|
}
|
|
|
|
@Override
|
|
public int compareTo(Pair o) {
|
|
return Integer.compare(this.experience, o.experience);
|
|
}
|
|
}
|
|
}
|