上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 35 下一页
摘要: 题意: 线段上固定着一些罪犯,第 \(i\) 个囚犯的位置为 \(a_i\)。现选一个位置建一个警局,每次出警从警局开一辆容量为m的警车,抓最多m个罪犯,然后开回警局。输出开车总路程的最小值。 \(1\le n, m\le 1e6, -1e9\le a_i\le 1e9\) 思路: 正解是线性的:先 阅读全文
posted @ 2022-03-02 20:23 Bellala 阅读(28) 评论(0) 推荐(0)
摘要: 题意: 给定n和 \(a_0\sim a_9\),问位数不超过n且每个数字 \(i\) 的出现次数不小于 \(a_i\) 的整数有多少个 思路: 这题卡了我很久,其实很简单。。。 \(f(i,j)\) 表示考虑了 \(j\sim 9\) 这些数字,组成不超过 \(i\) 位整数的方案数。 \(f(i 阅读全文
posted @ 2022-03-02 14:40 Bellala 阅读(35) 评论(0) 推荐(0)
摘要: 题意: 给定一个有向图,求恰经过k个点的最短路径的长度。 每个点最多走一次。且走一条新边 x->y 时,不能有一个之前走过的点的编号 u 在 x,y 之间(即 \(min(x,y)<u<max(x,y)\)) \(1\le n,k \le 100, 0\le m \le 2000\) 思路: 这题跟 阅读全文
posted @ 2022-03-01 23:44 Bellala 阅读(46) 评论(0) 推荐(0)
摘要: 题意: 给定n个数,问能否选出若干个数,它们的和是m的倍数 $1\le n \le 1e6, 2\le m \le 1e3,0\le a_i\le 1e9$ 思路: 法一:(取模的性质、抽屉原理、01背包) 对原数组做前缀和并取模,可能的前缀和只有 $[0,m-1]$,m种值。由抽屉原理,若 $n\ 阅读全文
posted @ 2022-03-01 16:29 Bellala 阅读(124) 评论(0) 推荐(0)
摘要: 题意: 把一个n位整数切成若干段,得到若干个整数。要求每个数都不为0,每个数都没有前缀0,且前一个数严格小于后一个数。问切割数方案取模。 \(n\le 5000\) 思路: \(O(n^2)\) 的dp,\(f(l,r)\) 表示最后一段是 \([l,r]\) 的方案数,则答案是 \(\sum\li 阅读全文
posted @ 2022-02-28 01:14 Bellala 阅读(58) 评论(0) 推荐(0)
摘要: 题意: 给定一个1~n的排列,q个询问,询问有两种类型: 1 x y:问至少几次能把 \(x\sim y\) 全部打一遍(\(1\le x<y\le n\))。每次能打一个连续上升子序列。注意x和y是值而非位置/下标,这里的打不会改变数组中的任何数,也就是不会影响后续操作; 2 i j:交换 \(a 阅读全文
posted @ 2022-02-26 21:00 Bellala 阅读(80) 评论(0) 推荐(0)
摘要: 题意: 图中有有向边和无向边,可能有重边。现要把原图中的无向边全变成有向边,构造两个图:第一个图最大化从s点出发能到达的点数,第二个图最小化从s点出发能到达的点数 思路: dfs,遇到有向边就直接走,遇到无向边时: 若要取max就把边的方向置为 u->v,并继续走; 若要取min就把边的方向置为 v 阅读全文
posted @ 2022-02-25 10:28 Bellala 阅读(55) 评论(0) 推荐(0)
摘要: 题意: 给定长为 \(n\) 的数组 \(a[]\),\(1\le a_i\le n\)。接下来 \(m\) 次操作,每次操作输入 \(b_i\),有两种类型: \(1\le b_i\le n\),表示向数组中插入 \(b_i\) \(b_i<0\) ,表示移除数组中的一个第 \(|b_i|\) 小 阅读全文
posted @ 2022-02-24 10:56 Bellala 阅读(23) 评论(0) 推荐(0)
摘要: 题意: 给定n个字符串。初始有个空串,两人轮流往串末尾每次加一个字符,要求任意时刻得到的字符串都是某个给定字符串的前缀。不能操作的人输。 现重复进行k次这个游戏,每次由上一次输的人先手,第k次游戏的胜者为最终胜者。问谁能赢 所有串长之和 \(\le 1e5\) 思路: 先只考虑单独的一次游戏。实际上 阅读全文
posted @ 2022-02-21 12:00 Bellala 阅读(63) 评论(1) 推荐(0)
摘要: 题意: 给定m个长为n的排列,求它们的最长公共子序列 \(1\le n \le 1000,2\le m\le 5\) 思路: 建一个点数为n的图,\(j\) 是 \(i\) 的后继当且仅当在所有排列中,\(j\) 都排在 \(i\) 的后面 然后dfs找最长路径 const int N = 1005 阅读全文
posted @ 2022-02-15 10:59 Bellala 阅读(29) 评论(0) 推荐(0)
上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 35 下一页