这名用户暂未设置签名。
追踪最近的用户名外显变动记录。
最近的文章、讨论、云剪贴板与社区记录
```python import heapq n = int(input()) heap = [] for _ in range(n): inp = [int(i) for i in input().split()] if inp[0] == 1: heapq.heappush(heap, inp[1]) elif i…
```python def dfs(s, dis): spots.append(s) if len(spots) == 4: dists.append(dis) return for ns in range(1, n + 1): if ns not in spots: for r in roads: if s == r…
在讨论《pyhton避坑》回复:
@[Terrible](luogu://user/195942) 感谢解疑
我开始的代码为 ```python def bfs(sx, sy): queue_ = [(sx, sy)] used[sx][sy] = 1 while len(queue_) != 0: x, y = queue_.pop(0) for mx, my in move: nx = x + mx ny = y + my…
在讨论《本题 二分法 要点注意》回复:
@[cccckick](/user/1449927) 这个记录result的关键是看count是否大于等于k,如果大于等于k,代表切出的巧克力数是够k人分的,符合要求,所以记录此时的mid(切分长度)
在讨论《本题 二分法 要点注意》回复:
@[cccckick](/user/1449927) 还有你这个pp函数里得到巧克力数的逻辑好像有问题,比方说有一个6*6的巧克力,mid=4,sum=16,此时count+=2,但实际上只能切出一块。
在讨论《本题 二分法 要点注意》回复:
@[cccckick](/user/1449927) result记录的话应该还需要加一个max(result,current_result),不然会出现小值覆盖大值的情况
本题直接套二分法的模板很可能出问题。个人得到的一个可行的写法是 (此处仅展示关健的区间控制) mid=(l+r+1)/2 结果大于等于K:l=mid 结果小于K:r=mid-1 此处不能写l=mid+1,因为mid可能为最终结果 需要保留。 而r就无所谓了,通过-1防止死循环 此处也不能写mid=(l+r)/2,会死循…
在讨论《测试点 #5 测试数据问题》回复:
@[heyx0201](/user/768951) 看了题解里,别人的c++代码,发现是用for循环控制输入次数,所以当m,n为0时for循环直接跳出,scanf也不执行,所以输入为0 0\n,正常执行,多输入两个\n可能还会出问题,所以只要一行输入。 python的这个列表推导式,简单来说,不依赖m,n,但后两行的必…
在讨论《测试点 #5 测试数据问题》回复:
@[heyx0201](/user/768951) ```python n, m = map(int, input().split()) prize1 = [int(i) for i in input().split()] prize2 = {int(i) for i in input().split()} two_p…
本人使用的是python 测试点 #5 死活过不取,下载数据后,发现是0 0 但自行测试后发现能通过,输出为空 最后发现数据为似乎少了一个回车 在加了这段代码后成功通过了 ``` n, m = map(int, input().split()) if n == 0 and m == 0: print() sys.exi…