今日:AtCoder Beginner Contest 383

A、B 比较简单所以昨晚就做了。
从 C 和 D 中学到了新的知识。
首先是 C,第一次知道 BFS 居然支持多起点(多源),而且实现方法就是单纯地把所有源点加到初始的 queue 里面

;
然后是 D,数论题,习惯性地认为 long long 不会溢出,没想到溢出了

为了防止溢出,在二分里面加了 break,却没考虑到直接 break 会导致丢失一部分已经计算出来的结果。
做完后看了题解,发现可以用双指针写,能去掉一个 log 因子

收获巨大。