Submission #58199


Source Code Expand

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	static Scanner sc = new Scanner(System.in);
	static int N;
	static int[] a, b;
	static long sum;

	public static void main(String[] args) {
		N = sc.nextInt();
		a = new int[N];
		b = new int[N];
		long max = 0;
		for (int i = 0; i < N; ++i) {
			a[i] = sc.nextInt();
			b[i] = sc.nextInt();
			sum += a[i];
		}
		for (int i = 0; i < N; ++i) {
			max = Math.max(max, (sum * b[i]) / a[i]);
		}
		for (long i = max;; --i) {
			if (!possible(i)) {
				System.out.println(i + 1);
				return;
			}
		}
	}

	static boolean possible(long m) {
		long[] count = new long[N];
		long all = 0;
		St[] rem = new St[N];
		boolean ok = true;
		for (int i = 0; i < N; ++i) {
			count[i] = a[i] * m / sum;
			all += count[i];
			rem[i] = new St(a[i] * m - count[i] * sum, i);
			if (count[i] < b[i]) ok = false;
		}
		if (ok) return true;
		Arrays.sort(rem);
		for (int i = 0; i < Math.min(m - all, N); ++i) {
			++count[rem[i].i];
		}
		//		System.out.println(m + " " + Arrays.toString(count) + " " + all);
		for (int i = 0; i < N; ++i) {
			if (count[i] < b[i]) return false;
		}
		return true;
	}

	static class St implements Comparable<St> {
		long c;
		int i;

		St(long c, int i) {
			this.c = c;
			this.i = i;
		}

		public int compareTo(St o) {
			if (this.c == o.c) return this.i - o.i;
			if (this.c > o.c) return -1;
			return 1;
		}
	}

}

Submission Info

Submission Time
Task E - 選挙
User tomerun
Language Java (OpenJDK 1.7.0)
Score 0
Code Size 1480 Byte
Status WA
Exec Time 2043 ms
Memory 63364 KB

Judge Result

Set Name Bubunten All
Score / Max Score 0 / 50 0 / 150
Status
AC × 10
WA × 19
AC × 9
WA × 82
TLE × 1
Set Name Test Cases
Bubunten small01.txt, small02.txt, small03.txt, small04.txt, small05.txt, small06.txt, small07.txt, small08.txt, small09.txt, small10.txt, small11.txt, small12.txt, small13.txt, small14.txt, small15.txt, small16.txt, small17.txt, small18.txt, small19.txt, small20.txt, small21.txt, small22.txt, small23.txt, small24.txt, small25.txt, sample1.txt, sample2.txt, sample3.txt, 20_minimal.txt
All 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 20_minimal.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, 41.txt, 42.txt, 43.txt, 44.txt, 45.txt, 46.txt, 47.txt, 48.txt, 49.txt, 50.txt, 51.txt, 52.txt, 53.txt, 54.txt, 55.txt, 56.txt, 57.txt, 58.txt, 59.txt, 60.txt, dekai1.txt, dekai2.txt, small01.txt, small02.txt, small03.txt, small04.txt, small05.txt, small06.txt, small07.txt, small08.txt, small09.txt, small10.txt, small11.txt, small12.txt, small13.txt, small14.txt, small15.txt, small16.txt, small17.txt, small18.txt, small19.txt, small20.txt, small21.txt, small22.txt, small23.txt, small24.txt, small25.txt, yabame1.txt, yabame2.txt, yabame3.txt, yabame4.txt
Case Name Status Exec Time Memory
01.txt WA 1714 ms 61504 KB
02.txt WA 1564 ms 61428 KB
03.txt WA 1105 ms 49300 KB
04.txt WA 771 ms 40824 KB
05.txt WA 1529 ms 61336 KB
06.txt WA 1355 ms 60188 KB
07.txt WA 890 ms 39224 KB
08.txt WA 1717 ms 61296 KB
09.txt WA 1954 ms 63140 KB
10.txt WA 1187 ms 52628 KB
11.txt WA 1068 ms 40916 KB
12.txt WA 917 ms 34792 KB
13.txt WA 1324 ms 52448 KB
14.txt WA 1123 ms 39224 KB
15.txt WA 1039 ms 47852 KB
16.txt WA 875 ms 29476 KB
17.txt WA 1724 ms 63340 KB
18.txt WA 1455 ms 58632 KB
19.txt WA 1027 ms 52444 KB
20.txt WA 1013 ms 39176 KB
20_minimal.txt AC 587 ms 20264 KB
21.txt WA 1019 ms 47000 KB
22.txt WA 1829 ms 63364 KB
23.txt WA 1695 ms 60692 KB
24.txt WA 1004 ms 47388 KB
25.txt WA 934 ms 32244 KB
26.txt WA 928 ms 41796 KB
27.txt WA 974 ms 39880 KB
28.txt WA 748 ms 32852 KB
29.txt WA 1228 ms 52384 KB
30.txt WA 730 ms 35576 KB
31.txt WA 987 ms 36272 KB
32.txt WA 901 ms 38180 KB
33.txt WA 787 ms 31244 KB
34.txt WA 869 ms 28392 KB
35.txt WA 796 ms 39608 KB
36.txt WA 997 ms 40572 KB
37.txt WA 1186 ms 52652 KB
38.txt WA 1045 ms 39664 KB
39.txt WA 853 ms 40924 KB
40.txt WA 908 ms 41116 KB
41.txt WA 1087 ms 48088 KB
42.txt WA 612 ms 20784 KB
43.txt WA 649 ms 20272 KB
44.txt WA 809 ms 31592 KB
45.txt WA 644 ms 24624 KB
46.txt AC 624 ms 22688 KB
47.txt WA 654 ms 30768 KB
48.txt AC 661 ms 20144 KB
49.txt WA 1279 ms 52844 KB
50.txt WA 606 ms 30704 KB
51.txt WA 1959 ms 62996 KB
52.txt WA 1859 ms 62060 KB
53.txt WA 1839 ms 61804 KB
54.txt WA 1734 ms 61700 KB
55.txt WA 1855 ms 63256 KB
56.txt WA 1871 ms 61988 KB
57.txt WA 1789 ms 61860 KB
58.txt WA 1941 ms 63108 KB
59.txt WA 1904 ms 61596 KB
60.txt WA 1810 ms 62060 KB
dekai1.txt WA 831 ms 37568 KB
dekai2.txt WA 1009 ms 37416 KB
sample1.txt AC 551 ms 20140 KB
sample2.txt AC 655 ms 20280 KB
sample3.txt AC 669 ms 20284 KB
small01.txt WA 614 ms 23988 KB
small02.txt WA 713 ms 20284 KB
small03.txt WA 592 ms 20788 KB
small04.txt WA 853 ms 20220 KB
small05.txt AC 827 ms 20272 KB
small06.txt WA 750 ms 21280 KB
small07.txt AC 552 ms 20272 KB
small08.txt WA 666 ms 23348 KB
small09.txt WA 686 ms 20912 KB
small10.txt AC 779 ms 22060 KB
small11.txt WA 718 ms 23844 KB
small12.txt WA 543 ms 20144 KB
small13.txt WA 620 ms 27352 KB
small14.txt AC 527 ms 20280 KB
small15.txt WA 747 ms 31428 KB
small16.txt WA 655 ms 20844 KB
small17.txt AC 579 ms 20116 KB
small18.txt AC 613 ms 20396 KB
small19.txt WA 619 ms 20256 KB
small20.txt WA 713 ms 21560 KB
small21.txt WA 946 ms 20776 KB
small22.txt WA 650 ms 22324 KB
small23.txt WA 560 ms 20760 KB
small24.txt WA 686 ms 20180 KB
small25.txt WA 563 ms 20816 KB
yabame1.txt WA 1823 ms 61464 KB
yabame2.txt WA 1996 ms 61292 KB
yabame3.txt WA 1848 ms 61728 KB
yabame4.txt TLE 2043 ms 63088 KB