Codeforces Round #801 (Div. 2) and EPIC Institute of Technology Round(C,D题解)

Codeforces Round #801 (Div. 2) and EPIC Institute of Technology Round

C - Zero Path Codeforces Round #801 (Div. 2) and EPIC Institute of Technology Round(C,D题解)_第1张图片

在这道题目中,不可以真正地进行寻找必须另想办法。

  1. 考虑到只能向右面还有下面走,所以对于一个点,它只可能有已经走过的点转移过来,这让我想起来动态规划。
  2. 动态规划考虑最优解,这里所需要求的是0,不可以直接考虑是否与0相接近,需要考虑其他解法。
  3. 最大值以及最小值是唯一的,所以可以通过动态规划,最终求出目的地的最大数字以及最小数字。
  4. 证明题目结论的充分必要条件。
  5. 如果最小值都大于0 || 最大值都小于0,那么就不行。
  6. 如果m+n-1(即所有要走过的1或者-1的个数),如果m+n-1 是奇数,那么就肯定不可能加起来等于0
  7. 如果m+n-1是偶数,并且最小值小于等于0,最大值大于等于0。
  8. 根据7中的m+n-1是偶数,得知最大值以最小值一定是偶数(不妨设路径上全部都是1,那么最大值一定是偶数,考虑替换其中的1为-1,同样也是偶数)。
  9. Codeforces Round #801 (Div. 2) and EPIC Institute of Technology Round(C,D题解)_第2张图片
    10.最后的到的值最大的路以及值最小的路的路径总可以通过一点一点变化2达到对方。故一定有一条路可以使路径上的值相加为0.

D2-Tree Queries (Hard Version)

D1和D2除了数据之外,没有什么不同

Codeforces Round #801 (Div. 2) and EPIC Institute of Technology Round(C,D题解)_第3张图片

你可能感兴趣的:(#,CodeForce,动态规划,算法)