n = int(input())
k = int(input())
seg = []
end = []
for i in range(n):
a, b = map(int, input().split(" "))
seg.append((a, b, i))
if b != -1: end.append((b, i))
seg.sort()
end.sort()
res = float('inf')
for t in range(1, n+1):
time = cur = 0
c = 1
voted = [0] * n
for i in range(len(end)):
if (c >= t): break
b, i = end[i]
voted[i] = 1
time += (b/c)
cur += 1
c += 1
if c < t:
break
for i in range(n):
if cur >= k: break
a, b, i = seg[i]
if voted[i]: continue
voted[i] = 1
time += a/c
cur += 1
if cur < k: continue
res = min(res, time)
print(res)
Compilation message (stdout)
Compiling 'Main.py'...
=======
adding: __main__.pyc (deflated 31%)
=======
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |