![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
思维题
文章平均质量分 69
钟钟终
知耻而后勇,脚踏实地
展开
-
思维题训练
暴力,关键点在于出现了9就退出,这样每次查询最多经过10次。一个思维点。原创 2023-03-31 16:06:17 · 146 阅读 · 0 评论 -
2022绵阳+dp经典问题
使得你获得的分数y尽可能地逼近整个游戏总分的均值。这一点我是想到的!!!为什么没立刻反应到?对于参数a值进行1~n的枚举;参数b进行二分;参数c便用n去减。longlong::(false)一个签到题。如果使用vector的删除操作会比较麻烦,用两个vector不断更新来回赋值也可做到筛选的操作。longlong(::(false),.tie(0),.tie(0))1.矩阵连乘,求最小计算次数longlong(::(false。原创 2022-11-24 22:01:30 · 729 阅读 · 0 评论 -
2022CCPC绵阳站A+广东站C
1.看到k的范围只有10,设计状态dp[round][numa][numb]:在已经进行i轮的基础上,A选了numa个英雄,B选了numb个英雄时的分数。3.状态转移:由于从0开始累计操作,因此偶数轮A行动,奇数轮B行动。一个小的注意点,当A行动完,B行动的时候,需要通过(轮数+1)/2才是A行动的轮数。当时vp时写了个贪心,wa6了,就想到可能是dp了。1.各个点到点t的距离相同,需要从终点反向遍历,合并点集。最后几天了,虽然一堆考试没复习,压力山大,不过都是小事。这几次的vp我们发挥的还可以,稳铜了。原创 2022-11-22 22:27:25 · 926 阅读 · 1 评论 -
2021济南站
2.本题的一个关键点。对大数的取模化简,不能使用double,可能会爆,还受精度影响。1.首先要根据公式推出来,矩阵行列式只受对角线元素影响。如果数理基础好一眼看出。3.高斯消元,保证对角线上的元素不为0.行变换注意将矩阵前加一个负号。复习了一下set中find函数的用法,时间复杂度为log(n)关键点:并查集对于一段区间进行合并跳转的操作。打表找规律写的,数理基础不好。原创 2022-11-21 20:55:54 · 483 阅读 · 1 评论 -
拓扑结构+差分约束+SLF最长路+扩欧
997m过了,超时了就多交几次就可能过吧……可以把vector改成链式前向行,vector改为二维数组,会优化100ms左右。1.两个未知量可能想到扩欧,本题是毫不相关。而且本题三个变量,需要枚举出sum[n]的值。可得出方程:r=d-k%d,也就是说k需要减去这样一个数r才会是d的倍数。令k=a|b,此时k不一定是d的倍数,我们只需要找到一个k是d的倍数。很容易想到要构造的那个数肯定是d的倍数,同时二进制a、b中出现的1.倦怠,但还不能休息,我的牌还没有到手~,由于低位的1会重复,因此左移30位。原创 2022-11-17 20:51:17 · 380 阅读 · 0 评论 -
ICPC+CCPC写题日记~
最近做题总是差这么一点点,但是acm不会接受任何差的这一点点,过不了就是过不了。没什么好说的,加紧练习。思路:记录每个数字到i位出现的次数。对总和进行枚举2~200.如果本次枚举的需要的数字的位序。a看能不能找到b,然后去check数字b,看能否消去计算出的b和删去的数字个数是否一致。4.本题思路:对于数字a的选取有2的lx次方种可能,利用公式x。卡住的点,脑瘫简直。数据根本据处理不出来,应该边乘边进行取模。3.一个厉害的技巧:对于一个数字选取任意位的代码实现,有2。2019银川站 F题。原创 2022-11-14 19:54:40 · 486 阅读 · 2 评论 -
22CCPC威海+思维
若g为奇数,在最后一个1划掉后,s2全部变为1,进行如下三次操作:对s1的1~n进行翻转,再对1 ~1、2 ~n进行翻转。对于5个点的判断:方法很多,都很难敲,看到个很巧妙的方法。1.如果两个字符串的相同位置既存在值相同的情况,也存在值不同的情况,那么肯定是无解的。1.使用map存下所有的限制条件,单独筛选出出现次数为0的数字存到数组中记为id。在题数没积累到一定量时,一眼是看不出来的,需要安静下来去分析,浮躁很难做出题来。思路还算简单,只有出现次数从0开始连续向上的数,才会卡住一些数让他们不能递减。原创 2022-11-10 23:03:17 · 706 阅读 · 1 评论 -
高斯消元+叉积求面积+记忆化搜索
如果对应位置不一样的数目为奇数,是不存在变换方案的;此外,若只好有一对相邻位置不同的,在x和2*y中取最小值即可;具体做法:该系数除以主元,再用每一行中每一列的值减去这个值乘上求得每一行算出的系数。1.选择一个尚未被选择过的,且为该列的最大系数的未知数作为主元,进行整行交换。3.每一列都这个重复步骤,最后每一行都只存在一个系数和值。逆时针对两个点进行叉乘累加,最后取绝对值再除以2为多边形的面积。此外,题目中没有要求,先不要考虑给出点的顺时针、逆时针顺序。抄了大佬们的一个高斯消元求自由元的板子。原创 2022-11-06 21:34:14 · 383 阅读 · 0 评论 -
第四届齐鲁校赛+二分思维+cf
思路:对于每一个数来说,可由小于等于它两倍的数结尾的数得到,再加上它的个数,这一部分便组合成每个子序列的长度,再加上1(本身)真的要被自己蠢死了!如果想到差分,秒过的题!我花了几个小时调自己的贪心代码,边界怎么都分不对。n*m的乘积小于1e6,此时我们没有办法开全局二维数组,但我们可以开局部二维数组!再开两个数组记录是否存在那样的矩阵,注意只要平行于x轴,可随意放置(只有2种)贪心的写法感觉是对的,就算是按照后边界排序,也不应该做不出来。思路:开设前驱数组和后驱数组,记录每个0左方和右方最近的1.原创 2022-10-31 17:09:07 · 481 阅读 · 1 评论 -
Codeforces Round #829、#830
思路:刚开始使用set查找元素超时了。之后想到我只要判断出元素在不在几何中就好,由于数组需要离散化,所以开map记录。mp:记录元素是否出现在集合中;a:记录该元素对应的最小倍数,及时用while暴力更新longlong(,,)for(=();原创 2022-10-24 21:10:46 · 366 阅读 · 0 评论 -
cf思维+CCPC威海
1.O(n*m)的思路肯定过不去。明知道不去想想怎么优化,净想了些乱七八糟的东西。一个注意事项:不能用sqrt直接开方,要用二分逼近取下边界。不超过一定的量级,则说明数组中不同的数不超过O(logN),k保证了该式子会是一个整数,那么如何使得n的值最小,3.相同的数归为一组,然后用快速幂优化就好。对于一个因子x的都有三个数能整除它,分别为。gcd最大公约数这个点没有想到。然后去讨论它的边界问题。,一次碰撞构成的圆心角为。,回到原点可能经过k圈。原创 2022-10-24 16:23:00 · 231 阅读 · 0 评论 -
ICPC焦作站(E、F)+思维+树上dp
1.在满足题目限制条件的情况下,可看出对于一个结点的孩子来说,会有p(k%sz)个结点被多经过一次,因此我们需要找到权值较大的节点路径进行分配。这场比赛依旧是三道题,E其实比我们出的D难一点,但确实在能力范围之内,出了就保底铜牌了,出的快的话说不定有银。由于范围达到了10的100次幂,有一次感受到python的便捷,但用的太少,不如c++顺手。分解a和b的质因子,再去深搜k1、k2对于各个质因子的所取个数。最后比较x和y的值小于等于c和d,即为找到满足要求的数。为经过该点的次数,在满足一个分支节点的孩子。原创 2022-10-21 11:48:00 · 534 阅读 · 1 评论 -
19香港补题(G)+cf思维
题意:构造一棵树,每个叶子节点都会有怪兽,可选择若干点上建造攻击塔,每个攻击塔的建造价值不同。要求构造的方式有k种,且每种方式的总价值相同,输出构造的树和每个点的权值大小。虽然说大部分时间都要留给队友一起训练,但是总会有早起、零散的时间可以利用,提高效率,好吧!但仍然有很多训练时间浪费掉的,有些疲倦,但真的不想退役后才后悔当初要是怎么样就会怎么样。原题思路:我只要保证a最小,b最大,若是a和b都只包含字符a,那我们去比较他们长度。2.若是从二叉树的角度思考,便只需根据k分化后的奇偶性进行递归即可。原创 2022-10-17 17:28:02 · 448 阅读 · 1 评论 -
9/12 思维训练
前者为k*(k-1)/2,后者由于肯定会经过这n个点,因此不妨走到一端后,变保持自己的位置不动,(保持不动我是真的没想到),但是蘑菇数还是再增加的,当实践还剩k-n秒时,我们就要去收割那些本来就有的蘑菇和长处的蘑菇了,此时租箱另一端,在这个过程中,本来保持不懂的端点长出了n个蘑菇踩不到,相邻的一个点有n-1个蘑菇踩不到……题意:在一个01字符串中,可从左右两端删除任意的字符,删除1的数目和字符串中0的数目去最大值,要求让这个最大值最小。先好钥匙开x再坏钥匙开y:x-k+y/2。原创 2022-09-12 23:45:21 · 183 阅读 · 0 评论 -
Div4 思维总结
1.从高度和宽度的数据范围入手,由于都是1~1000,最高达到1e6次方,可统计n个矩阵中,在i行j列时面积的累加值。题意:每个人可选择向左看或者向右看,将看到的人数累加,可一次改变k个人的方向,要加累加值最大。2.由于不能重叠,需要加1和减1的操作,利用差分求出h1~h2和w1 ~w2中的乘积的累加和。1.将改变方向后人数增多的值进行记录,再进行降序排列,统计前缀和,改变数目为cnt。,可知前n-2的数可随意放置,第n-1个数为a|b,第n个数为a。题意:判断图形"L",每两个之间不能有边和角的重叠。..原创 2022-09-01 16:36:44 · 548 阅读 · 0 评论