• ABC233 G & H 题解


    ABC233G Strongest Takahashi

    题面

    题意:

    有一个 \(n\times n\) 的网格,有一些格子上有方块。每次操作可以选择一个 \(D\times D\) 的正方形覆盖网格,代价为 \(D\)。问覆盖所有方块的最小代价和是多少。

    数据范围:\(1\le n\le50\)

    性质:选择的正方形不会接壤。否则将这两个正方形和起来肯定不劣。

    \(dp_{sl,sr,el,er}\) 表示覆盖左上角为 \((sl,sr)\),右下角为 \((el,er)\) 的矩形所需的最小代价。

    转移可以枚举哪一行 / 列空着,分成两个子问题。

    时间复杂度 \(\mathcal{O}(n^6)\),但远远跑不满。

    Code:https://atcoder.jp/contests/abc233/submissions/29947922

    ABC233H Manhattan Christmas Tree

    题面

    题意:

    给出平面上 \(n\) 个点 \((x_i,y_i)\),有 \(Q\) 次询问。

    询问 \(i\):离 \((a_i,b_i)\) 曼哈顿距离第 \(K\) 近的点距离是多少?

    数据范围:\(1\le n,x_i,y_i,Q\le10^5\)

    看到曼哈顿距离,立马想到能不能转成切比雪夫距离,即 \((x,y)\to(x+y,x-y)\)

    发现在这道题里可以这样做。

    于是对于每次询问二分答案 \(mid\),在以 \((a_i-mid,b_i-mid)\) 为左下角,\((a_i+mid,b_i+mid)\) 为右上角的正方形内看是否有 \(K\) 个点。这个可以用 动态开点的二维树状数组 / 主席树 做到。

    Code:https://atcoder.jp/contests/abc233/submissions/29925632

  • 相关阅读:
    【POJ
    【POJ
    【POJ
    【POJ
    【POJ
    【POJ
    【POJ
    【POJ
    NAT
    OSPF与ACL综合实验
  • 原文地址:https://www.cnblogs.com/xsl19/p/abc233_g_h_sol.html
Copyright © 2020-2023  润新知