上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 28 下一页
摘要: 首先,如果 \(n\) 个都要选,那么显然,应该先把 \(b\) 值大的先选掉,这样浪费最小。 基于这种想法之上,我们就可以先按 b 排个序,然后 \(dp\) 用 \(f_{i,j}\) 表示在前 \(i\) 个中选了 \(j\) 个的最大金币数 所以递推式就十分显然,\(f_{i,j}=\max 阅读全文
posted @ 2022-06-11 15:05 A_zjzj 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 因为每一条边都要走个遍,所以 如果一个点的入度等于出度,那么在这个点一定不用走路。 如果一个点的入度小于出度,那么肯定还要从其他的点走路到这个点 如果一个点的入度大于出度,那么肯定还要从这个店走路到其他的点 现在,我们只要知道每一个点的入度减掉出度。 比如样例 很显然,让 \(②\) 和 \(①\) 阅读全文
posted @ 2022-06-11 15:05 A_zjzj 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 首先,可以爆搜,不过分比较少。 然后,我们可以算出每条边,然后把边按照距离排个序。就可以转换成线性 \(dp\) 用 \(f_i\) 表示到了第 \(i\) 条边最多可以拿到几个点心 但是,还有一点要考虑,如果有一坨边的距离都一样,那么应该取走那条边呢。 所以,我们可以另外开一个数组记录一下就可以了 阅读全文
posted @ 2022-06-11 15:04 A_zjzj 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 其实是一道结论题。 因为模完之后一定有 \(k\) 个取模后的结果,而每一个取模之后的结果都在 $[0,k-1]$中。 \(n\%1=0\)。 而 \(n\%2\) 不能和 \(n\%1\) 的结果相同,所以$n%2=1$ 同理得,\(n\%3=2\) \(\cdots\) \(n\%k=k-1\) 阅读全文
posted @ 2022-06-11 15:03 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 一看题目,搜索题啊。 首先,枚举排列,然后验证是否在同一条斜线上 设有两个点是 \(i,j\) 那么如果他们在从左上到右下↘的斜线上,那么一定满足$X_i-Y_i=X_j-Y_j$ 如果他们在从左下到右上↗的斜线上,那么一定满足$X_i+Y_i=X_j+Y_j$ 所以打出代码: #include<c 阅读全文
posted @ 2022-06-11 15:02 A_zjzj 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 一道哈希题。 因为只有两个关键字,直接用进制哈希。 然后存到一个数组里面,每次边更新答案边哈希 代码 #include<cstdio> using namespace std; int n; char a[100],b[100]; int get1(int i){//对城市开头的哈希 return 阅读全文
posted @ 2022-06-11 15:01 A_zjzj 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 看数据可以猜测:这是一道状态压缩的动态规划题 没错。 我们用 \(f_i\) 表示在 \(i\) 状态下最少需要多少节点。 那么转移方程就是: \[ f_i=\min\limits_{j\&i=j}{f_j+f_{i-j}-lcp(i)} \] 这个 \(lcp(i)\) 就是在 \(i\) 状态下 阅读全文
posted @ 2022-06-11 15:00 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 其实不难,手推一下就发现规律: \(X_{m(k+1)+1}=A_1\) \(X_{m(k+1)+2}=A_2\) \(\cdots\) \(X_{m(k+1)+k}=A_k\) \(X_{m(k+1)}=A_1 ⊕A_2⊕\cdots⊕A_k\) 所以代码就不难了。 #include<cstdio 阅读全文
posted @ 2022-06-11 14:59 A_zjzj 阅读(18) 评论(0) 推荐(0) 编辑
摘要: \(n\) 次 \(dfs\) 即可,细节见代码 直接用两点间距离公式:\(d=\sqrt{(x_1-x_2)^2+(y_1-y_2)^2}\) 看一下能不能从 \(u\) 到 \(v\),如果可以的话,就继续搜下去,否则就回溯。 #include<cstdio> #include<cstring> 阅读全文
posted @ 2022-06-11 14:59 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 传送门:主题库/比赛里 题目大意 给你 \(n\) 个数,你可以选一个数让他插到原数组中的任意位置,经过多次操作后,使得每一个第 \(1\) 到 \(k\) 小的数都在 \(k+1\) 到 \(k+n\) 位置中,每一个第 \(k+1\) 到 \(k\times2\) 小的数都在 \(k+1\) 到 阅读全文
posted @ 2022-06-11 14:58 A_zjzj 阅读(6) 评论(0) 推荐(0) 编辑
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 28 下一页