其他-Paddling On CF

如何在野外生存和划水

#542 (Div. 2)

A. Be Positive

统计正数和负数个数。

B. Two Cakes

题意: 给定 \(2n\) 个数的序列, \([1,n]\) 每个数都出现了 \(2\) 次,从最左边开始两个人都要求依次从小到大取走数字,求最小移动距离。

贪心。 \(x_i, y_i\) 表示数字 \(i\) 的两个位置,如果选 \((x_i,x_{i+1})\) 的话,另一个人就要选 \((y_i,y_{i+1})\) 。两种情况选最小的。

C. Connect

搜索 \(S, T\) 能到的地方,枚举两个位置, \(O(n^4)\)

D1/D2. Toy Train

考虑每个点至少经过的次数 \(C_i\) ,记录最后一次经过后至少还需要走的路程 \(A_i\)

\(x\) 点为起点的答案就是 \(max\{dis(x,i)+(n-1)C_i+A_i\}\)

E. Wrong Answer

hdhd 大佬瞬间说出,如果 \(k \le 1e6\) ,直接构造 \(a_i=-k\) 即可,贪心程序此时会输出 \(0\) ,虽然这根本不是可行方案。

如果 \([l,r]\) 的区间和非负,右边还有一个非负数,那肯定 \([l,r+1]\) 不会更差,因为长度增加,区间和不减。

构造 \(a_1=-1,a_2 \ge 1,a_3,a_4 \cdots ,a_n \ge 0\) ,期望正解是选 \([1,n]\) ,贪心程序答案是选 \([2,n]\)

\(a_2+a_3+ \cdots a_n=t\)\((t-1)n - t(n-1) = k \Rightarrow t = k+n\) ,除了 \(a_1\) 外每个数的大小是 \(\dfrac{t}{n-1}\) ,大约 \(5 \times 10^5 \le 10^6\) ,没问题。

posted @ 2019-02-25 18:46  derchg  阅读(144)  评论(0编辑  收藏  举报