zoukankan      html  css  js  c++  java
  • CF1396

    CF1396

    A [* easy]

    给定 (n) 个数 (a_i),操作 (3) 次,每次选择一个区间,给区间内每个数增加 ( m len) 的倍数的值。

    使得所有数为 (0)

    (1le nle 10^5)

    ( m Sol:)

    考虑这样操作,先操作 ([1,n]),再操作 ([1,1])([2,n]),注意到当 (n e 1) 时有 (n-1)(n) 互质,所以可以构造得到解。

    B [* easy]

    给定 (n) 个堆石头,每堆有 (a_i) 个石子,Alice 和 Bob 轮流操作,每次操作为:选择与对方上一轮操作选择的不同的一堆石头,拿走其中一个石子。(第一轮任意)

    求 Alice 和 Bob 谁必胜。

    (nle 100,a_ile 100)

    ( m Sol:)

    注意到如果存在一堆石头满足 (sum a_i<2 imes a_x),那么 Alice 可以一直拿这堆石头。所以 Alice 获胜。

    否则由于假设 Alice 操作后变成了这种情况,那么 Bob 必胜,所以双方都会避免这个情况发生,所以所有石头都会被取完,那么根据 (sum a_i) 的奇偶性判定答案即可。

    C [* easy]

    题意很复杂。

    大概先画一下你的行动路线,发现大概是一条链上挂了一点环,然后最后一个环可以不走回来的这样的一个东西。

    所以就可以考虑 dp 了,设 (f_i) 表示当前到位置 (i),将 ([1,i]) 中所有怪都消灭的方案。

    那么转移有两种:

    1. (i-1) 处转移过来,这个时候我们要直接消灭 (i) 处的怪物才能保证留在 (i) 处。
    2. 枚举环的起点 (l+1),那么每个位置的怪物可以直接以最小花费解决(注意我们会路过每个怪物至少两次)预处理最小花费,其前缀和,转移为 (f_i=f_l+S_n-S_{l}+(i-l-1) imes 3d+d)

    然后边界情况会需要一点特判比较麻烦,所以可以直接认为 (f_0=-d)(相当于增加了一段起点)

    然后对于 (f_n) 单独转移一下即可,第二种转移显然可以拆开记录前缀 (min)

    D [* hard]

    给定 (n,k,L) 表示有一个大小为 (L imes L) 的矩形,内部有 (n) 个点,每个点有一个颜色 (c_i),位于 ((x_i,y_i)),保证 (1le c_ile k) 且每种颜色至少有一个点,你需要求有多少个矩形满足其内部含有所有颜色的点。

    (kle nle 2000,Lle 10^9)

    ( m Sol:)

    将元素进行离散化现在我们的矩形大小为 (n imes n) 了。

    考虑一维的情况如何处理,对于每个 (l) 维护 (f(l)) 表示最小的 (r) 使得 ([l,r]) 合法。那么此时贡献为 ((L-r+1))

    处理 (f(l)) 可以预处理每个颜色的下一个位置,取 (max) 即可。

    接下来考虑处理二维的情况,我们枚举矩形的一个边界(某一行),然后先对这一行做一维的处理,然后考虑将其拓展为二维的情况,每次在某个位置插入一个颜色 (c),这会使得答案改变,影响的区间 ([pre_c,i]) 这个区间内的答案可能会变小。然而我们计算答案为取 (max) 所以难以解决。

    不妨反过来考虑,先处理出最终的答案,然后逆着处理,每次删除一个新颜色 ([pre_c,i]) 的答案会取 (max),然后每次查询一次全局贡献和。显然这是可以使用线段树维护的,然而直接取 (max) 要写某科技树?所以好像不是很好做。

    事实上观察到 (f(l)) 是单调的,所以直接写一个线段树二分找到对应区间,然后执行区间覆盖即可,复杂度为 (mathcal O(n^2log n))

    不过离散化后处理感觉很难写,代码先咕咕咕着。

    E

    给定一棵 (n(n m ~is ~even)) 个点的树 (T) 以及常数 (k)。现生成一张 (n) 个点的完全图 (G),对于每对点 ((u,v)) 连接一条边权为 ( extrm{dist}(u,v)) 的边。

    你需要求这张图的一个完美匹配使得边权和恰好为 (k);输出一组方案或确定不存在解。

    完美匹配的定义是:一组边集,满足每个点都恰好被覆盖一次。

    (nle 10^5,kle n^2)

    ( m Sol:)

    题目太神仙了,先咕咕咕着。

  • 相关阅读:
    typedef
    心目中的编程高手
    截取包含多字节字符的字符串
    Start deltacat Audio Mix Filter
    关于编译环境和DLL的惨痛教训
    【转】自定义Extjs中Grid单元格的显示格式
    Ajax 按需 提交指定字段 以 Json Model 形式 post 到 action
    [转]Log4Net 非常完整的配置。
    【转】Ext.data.Store
    this.getColumnModel is not a function Extjs 如何解决呢? Extjs 导出 到Excel 解决方案问题
  • 原文地址:https://www.cnblogs.com/Soulist/p/13653490.html
Copyright © 2011-2022 走看看