제출 #1196519

#제출 시각아이디문제언어결과실행 시간메모리
1196519ofozSelf Study (JOI22_ho_t2)Pypy 3
100 / 100
844 ms131408 KiB
from sys import stdout, setrecursionlimit from math import ceil, floor, sqrt def ceil(a: int, b: int): return (a + b - 1)//b n, m = map(int, input().split(" ")) a = list(map(int, input().split(" "))) b = list(map(int, input().split(" "))) enum = list(range(n)) enum = sorted(enum, key = lambda i: (-max(a[i], b[i], -min(a[i], b[i])))) def is_possible(x: int): extra = 0 for i in enum: if b[i] >= a[i]: p = b[i] else: p = a[i] op = ceil(x, p) if op <= m: extra += (m - op) continue needed = min(x - m * p, extra * b[i]) op = ceil((x-needed), p) if op > m: return False extra -= ceil(needed, b[i]) return True l, r = 0, int(1e18)+50 while r-l>1: mid = (l+r)//2 if is_possible(mid): l = mid else: r = mid print(l)

컴파일 시 표준 출력 (stdout) 메시지

Compiling 'Main.py'...

=======
  adding: __main__.pyc (deflated 38%)

=======
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...