题解 | 圆覆盖
圆覆盖
https://www.nowcoder.com/practice/4f96afe5dfe74dad88dbe419d33f9536
import sys
input = sys.stdin.readline
def solve():
n,S=map(int,input().split())
point=[]
for _ in range(n):
x,y,v=map(int,input().split())
r2=x*x+y*y
point.append((r2,v))
point.sort()
total=0
for r2,v in point:
total+=v
if total>=S:
print(r2**0.5)
return
print(-1)
return
solve()
读入数据,根据r方排序,当权值之和足够,输出根号r,一直不够则输出-1
查看23道真题和解析