牛客小白月赛56
A
分别输出 \(n,(a+b)n\)
B
输出 \(m\) 个 \(1\)
C
对 \((2^i,i)\) 排序,对 \(a_i\) 排序,从小到大依次放入ans数组
D
求出小于等于 \(10^7\) 的所有素数,用 set 存起来,依次删除 \(a_i\),输出当前 set 的最小值
E
删除一段全 \(0\) 段会对答案造成 \(4\) 的贡献,把所有全 \(0\) 段按照长度排序后贪心选取
F
拆点,\(u \to v'(x/y+z),v \to u'(x/y+z),u \to v(x/y), u' \to v'(x/y)\),然后跑最短路
另一个角度:由于每个点在Dijkstra的时候只会经过一次,所以只需要把当前点是否反转的最小值作为边权即可

浙公网安备 33010602011771号