zoukankan      html  css  js  c++  java
  • VP 9.26 AtCoder Regular Contest 076

    VP 时切了 CD,E 题想到了结论但是人傻了,一种情况没有考虑,一直 WAWAWA。

    C Reconciled?

    显然,当 (abs(n, m) > 1) 时 为 (0)

    (n= m) , 答案为 (2 imes(n!)^2)

    (n = m + 1) , 答案为 (n! imes m!)

    D Built?

    差点被吓傻了,以为要什么 ( exttt{Boruvka}) 算法。

    显然这题不需要。

    考虑贡献函数,(min(|a−c|,|b−d|)) 也就是说每个点尽量向 (x , y) 离他最近的点连边,然后 ( exttt{Kruskal}) 就行了,边数 (4 imes n) 条,轻松通过。

    E Connected?

    一个比较显然的结论(VP 的时候想到了):只有两个点都在边界上才会影响答案,因为其他的线可以绕绕绕来满足答案。

    然后我就脑抽了,只统计了两个点都在 (x) 边界或者 (y) 边界的情况 /qd /kk

    一直 WAWAWA ..

    考虑有用的线,那么它们在边界上构成了一个类似括号序列的东西,只要排个序,然后用栈,检查是不是括号序列就行了。

    F Exhausted?

    orz Hall 定理做法,但是我不会,先咕咕咕一下

    考虑贪心,我们可以先按左端点排序,然后按 (L) 尽量放,如果一个点放不了了,那么从之前放的点中选出一个 R 最小的点,然后让它让位,去满足 (R) 的限制,最后 (check) 一下就行了。

    本博客作者:Werner_Yin(https://www.cnblogs.com/werner-yin/) ,转载时请注明出处,谢谢支持!
  • 相关阅读:
    每天一道Rust-LeetCode(2019-06-11)
    每天一道Rust-LeetCode(2019-06-10)
    每天一道Rust-LeetCode(2019-06-08)
    每天一道Rust-LeetCode(2019-06-07)
    每天一道Rust-LeetCode(2019-06-06)
    每天一道Rust-LeetCode(2019-06-05)
    每天一道Rust-LeetCode(2019-06-04)
    linux 基本命令
    使用 DrMemory 详细教程
    C++ 虚函数表解析
  • 原文地址:https://www.cnblogs.com/werner-yin/p/vp-2021-09-26-ARC-076.html
Copyright © 2011-2022 走看看