04 2024 档案

摘要:题目 解法 极度困难。 首先要把问题转化为二维平面上取点,类似于放车问题,点是 \((i,p_i)\)。 然后很显然的就是你的 \(a_i-a_{i-1}\le2\),可以分讨一下。 \(a_i-a_{i-1}=0\) 暂时不考虑往上填点。 \(a_i-a_{i-1}=1\) \((i,1)-(i, 阅读全文
posted @ 2024-04-16 22:11 point_fish 阅读(15) 评论(0) 推荐(0)
摘要:dp,容斥 阅读全文
posted @ 2024-04-16 11:49 point_fish 阅读(8) 评论(0) 推荐(0)
摘要:题目 显然,每只宠物至多被雇佣一次。 考虑建图跑最短路,但是这里的边很多,不可行。 尝试优化建图,每个点有一个入点和出点,对于每种属性,从小到大排序,建一条链(链的权值就是属性差),下来,然后每个入点连到链上对应的点,链上的点链到出点。 阅读全文
posted @ 2024-04-08 21:36 point_fish 阅读(5) 评论(0) 推荐(0)
摘要:题目 解法 显然是个 \(kmp\) 但是超时。 有个性质,对于一个字符串,左右两边删去一个字母,border最多减少2,因为原本border掐头去尾就可以变成新串的border。 阅读全文
posted @ 2024-04-08 21:25 point_fish 阅读(6) 评论(0) 推荐(0)
摘要:题目 题意 给定一个 \(n\) 行 \(m\) 列的目标矩阵,矩阵元素只有 W 或 B ,并且你有一个初始矩阵,元素全为 W 。 现在你可以矩阵实施以下操作: 使用一块钱,选定一个包含 \((1,1)\) 的子矩阵,把矩阵中的元素全部反转( W 变 B , B 变 W )。 使用两块钱,选定一个包 阅读全文
posted @ 2024-04-08 21:11 point_fish 阅读(14) 评论(0) 推荐(0)
摘要:题目 题意 给定一个序列 \(A\),求进行最少多少次操作可以使得序列 \(A\) 全为正数。 定义一次操作: 选择一个区间 \([l,r]\) 满足 \(\sum\limits_{i = l}^r A_i < 0\) ,其中 \(1 < l \le r < n\)。 令 \(S = \sum\li 阅读全文
posted @ 2024-04-08 21:03 point_fish 阅读(6) 评论(0) 推荐(0)