刷题
文章平均质量分 73
kono_jojo_da
这个作者很懒,什么都没留下…
展开
-
Codeforces 刷题 4
1476C Longest Simple Cycle题目大意给定n条竖直边,第 i 条边含有ci个节点,这条边的第一个节点连在前一条边的第ai个节点,最后一个节点连在前一条边的第bi个节点,试求出一笔能划过最多边上节点的数目。解题思路线性dp题,dp[i]代表以第i条边为结尾的答案,那么对于每一个i有继承之前的与不继承独立成环两种选择,取最大值,若首尾两个节点连在同一个点上,那么必须自己独立成环,遍历一遍即可,在所有dp[i]中取最大值#include<iostream>#inclu原创 2021-06-07 21:06:05 · 127 阅读 · 0 评论 -
Codeforces 刷题3
1.AGAGA XOOORRR题目大意给定一个长度为 n 的数组 a ,每次可以选择相邻的两个数进行异或运算,并用结果替换这两个数,试问能否有一种策略,使操作后的数组的每一个元素都相同(数组元素个数大于等于2)解题思路考虑最后的结果,尽可能把剩余的数最小化,那么可以发现最少只可能为2或3个数相同如果大于3,可以继续进行异或化为最少情况,又因为每次都取连续的两个数,所以直接对两种情况分别讨论,枚举分界点,用异或前缀和优化即可。(异或运算也可以用前缀和优化)#include<iostream&原创 2021-06-02 19:37:57 · 283 阅读 · 0 评论 -
codeforces 刷题2
1.Filomino 2题目大意给定一个 n*n 的矩阵,要求把 1 到 n 的数填进去,并满足以下条件:只能填在矩阵的下三角形区对于第 i 个数,要有 i 个格子都填这个数填相同数的格子必须互相连通主对角线所有格子的数必须不重复数字并不一定是按1到n的顺序给出的解题思路贪心的思想,从最上面的对角点开始放第一个数,对与每一个数字优先往左找点放数字,如果放不下开始往下走,这样就可以保证全部放下。#include<iostream>#include<algorithm原创 2021-05-26 23:01:10 · 111 阅读 · 0 评论 -
codeforce刷题 1
1.Sequence Pair Weight题目大意给定一个长度为 n 的数组 a,规定 i < j 且 ai = aj 为一个数对,求数组 a 的 所有连续子序列中有多少个这样的数对,输出总数。解题思路易得如果一个一个子序列去遍历的话,那么大约有 n*n/2 个子序列,会超时所以要考虑更简单的方法,采用动态规划的思想,dp[i] 代表以第 i 个数为结尾的所有子序列的答案总数,同时用 map 储存每一个数字出现的次数#include<iostream>#include<原创 2021-05-23 22:38:08 · 591 阅读 · 0 评论