Submission #8278991
Source Code Expand
Copy
import sysread = sys.stdin.buffer.readreadline = sys.stdin.buffer.readlinereadlines = sys.stdin.buffer.readlinesfrom heapq import heappush, heappushpop, heapifyfrom fractions import gcdN = int(readline())m = map(int,read().split())AB = sorted(zip(m,m),key=lambda x:(x[1],x[0]))A,B = zip(*AB)dp2 = [0]*N # T_B - T_Afor i in range(N-1,0,-1):a = A[i]; b = B[i]if a<b:dp2[i-1] = dp2[i]+(b-a)else:dp2[i-1] = dp2[i]
import sys read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines from heapq import heappush, heappushpop, heapify from fractions import gcd N = int(readline()) m = map(int,read().split()) AB = sorted(zip(m,m),key=lambda x:(x[1],x[0])) A,B = zip(*AB) dp2 = [0]*N # T_B - T_A for i in range(N-1,0,-1): a = A[i]; b = B[i] if a<b: dp2[i-1] = dp2[i]+(b-a) else: dp2[i-1] = dp2[i] def F(n): opt_num = -1 opt_den = 1 q = list(-x for x in A[:n]) heapify(q) S = -sum(q) for i in range(n,N): a = A[i]; b = B[i] x = S+a-dp2[i] if 0<=x<=b: den = b num = (n+1)*den-x if opt_num*den < opt_den*num: opt_num = num; opt_den = den x = a y = -heappushpop(q,-x) S += x-y return opt_num, opt_den opt_num = 0; opt_den = 1 left = -1 # 値がある right = N+10 # むり while left+1 < right: mid = (left+right)//2 num,den = F(mid) if num==-1: right=mid else: left=mid if opt_num*den < opt_den*num: opt_num = num; opt_den = den opt_den *= N g = gcd(opt_num,opt_den) opt_num//=g; opt_den//=g print(opt_num,opt_den)
Submission Info
Submission Time | |
---|---|
Task | D - Balance Beam |
User | maspy |
Language | PyPy3 (2.4.0) |
Score | 1100 |
Code Size | 1310 Byte |
Status | AC |
Exec Time | 1269 ms |
Memory | 123072 KB |
Judge Result
Set Name | Sample | All | ||
---|---|---|---|---|
Score / Max Score | 0 / 0 | 1100 / 1100 | ||
Status | AC |
|
Set Name | Test Cases |
---|---|
Sample | |
All | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 00-sample-04.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00-sample-01.txt | AC | 295 ms | 66156 KB |
00-sample-02.txt | AC | 266 ms | 63852 KB |
00-sample-03.txt | AC | 268 ms | 63852 KB |
00-sample-04.txt | AC | 267 ms | 63852 KB |
01-01.txt | AC | 265 ms | 63852 KB |
01-02.txt | AC | 799 ms | 99792 KB |
01-03.txt | AC | 1145 ms | 121424 KB |
01-04.txt | AC | 736 ms | 96272 KB |
01-05.txt | AC | 889 ms | 104800 KB |
01-06.txt | AC | 706 ms | 96864 KB |
01-07.txt | AC | 554 ms | 88536 KB |
01-08.txt | AC | 623 ms | 92080 KB |
01-09.txt | AC | 1262 ms | 121520 KB |
01-10.txt | AC | 609 ms | 94680 KB |
01-11.txt | AC | 767 ms | 101432 KB |
01-12.txt | AC | 1170 ms | 121180 KB |
01-13.txt | AC | 1038 ms | 120460 KB |
01-14.txt | AC | 739 ms | 99356 KB |
01-15.txt | AC | 528 ms | 87384 KB |
01-16.txt | AC | 1063 ms | 121468 KB |
01-17.txt | AC | 517 ms | 86616 KB |
01-18.txt | AC | 661 ms | 98096 KB |
01-19.txt | AC | 480 ms | 83072 KB |
01-20.txt | AC | 1258 ms | 121408 KB |
01-21.txt | AC | 1222 ms | 123072 KB |
01-22.txt | AC | 1220 ms | 121920 KB |
01-23.txt | AC | 1209 ms | 121920 KB |
01-24.txt | AC | 1204 ms | 122688 KB |
01-25.txt | AC | 1215 ms | 122688 KB |
01-26.txt | AC | 1254 ms | 122304 KB |
01-27.txt | AC | 1269 ms | 122176 KB |
01-28.txt | AC | 1171 ms | 121324 KB |
01-29.txt | AC | 1189 ms | 121836 KB |
01-30.txt | AC | 1186 ms | 121580 KB |
01-31.txt | AC | 1128 ms | 120940 KB |
01-32.txt | AC | 1112 ms | 121708 KB |
01-33.txt | AC | 1094 ms | 121580 KB |
01-34.txt | AC | 1173 ms | 120940 KB |
01-35.txt | AC | 1169 ms | 121196 KB |
01-36.txt | AC | 1191 ms | 121068 KB |
01-37.txt | AC | 866 ms | 114608 KB |
01-38.txt | AC | 1105 ms | 121668 KB |
01-39.txt | AC | 1048 ms | 121940 KB |
01-40.txt | AC | 1050 ms | 120992 KB |