Loading

牛客小白月赛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的时候只会经过一次,所以只需要把当前点是否反转的最小值作为边权即可

posted @ 2022-08-26 21:10  nekko  阅读(19)  评论(0)    收藏  举报