- 博客(19)
- 收藏
- 关注
原创 扩展中国剩余定理(纯小白版,通俗易懂说人话)
言归正传,上集说到我们通过nb的扩展欧几里得算法求出了g,x,y,接下来便是如何使用和合并运算,而在这之前前还有关键的一步验证是否合法,会不会无解,而验证这一点对于当初刚刚开始的我来说可谓是一脸懵逼,首先第一步还是要学会接受,这样子可以验证是否合法,而不是一直想为什么这样可以,在没有任何思路下,会很内耗的,而当你先接受这样可以验证并学会知道后,再想,就会格外不一样,会特别特别,就是很特别的感觉,下面我将一点点说明里面的c是什么玩意为什么是a - x0,为什么模的是mi不是别的,为什么c % g!
2025-09-26 21:12:57
833
2
原创 快速求斐波那契数列的第n项(最快的矩阵快速幂),只求会用,会解题版
为什么会想到学这个呢(考到了,不会呗,TWT),这次遇见的n比较大,普通的递推那是想都不用想,一定超时的,我先是想到了高中老师交过的斐波那契数列通项公式(怎么推的我是不会,但是我把这个公式当时背下来了),也是臭长的一个式子。然后又想到了最常用的(高中常考的,奇偶项的表示)
2025-08-15 16:09:12
319
原创 河南萌新联赛2025第(四)场:D 箭头谜题Ⅰ
整体实现还是挺简单的,过程中倒是有几个有意思的点,比如如何在匹配成功与不超过时分别区分出来,然后就学到了一个小技巧int dx[4]={-1,0,1,0},dy[4]={0,1,0,-1};将这两者结合起来,就刚刚好完美解决,不需要繁琐的进行类似的操作。哇,好聪明,竟然可以建树以求最短路的方法来写,WC,太聪明了,就和我之前写的那篇一样,都是妙用建树来写,也都是求最短路就是这一篇《河南萌新联赛2025第(一)场 B题 代价转移》,里面也是这样的思路,大开眼界啊,大开眼界口圭!ok了,非常简略的一篇。
2025-08-11 10:31:25
172
原创 河南萌新联赛2025第(四)场:L 故障机器人的完美遗物
我当时在写时,显然一定要先是完全平方数才有可能,之后对应寻找因数却犯了难,我当时确切的知道暴力包超时的(即使知道完全平方数),一直在想怎么快速的求出因数个数,想不出来,当时给我逼急了,我想着10^12的数据范围,完全平方数那就是10^6我要是先预处理这10^6个东西,再标记一下,这样10^6的范围包不会超时的,但是在实现时发现,太多了,不会,而且照样超时,发现这和之前没有什么大的区别,最终还是回到了之前,一样要平方后求因数个数然后判断,哎,一遍就AC了,真是可惜当时不知道唯一分解定理以及和因数个数的关系。
2025-08-08 11:26:41
286
原创 线性dp这一块 基础六大类型备忘 类型(一)(难度最高绿,共9道)
依旧是dp啊,nnd,已经学了好几天dp了,这次是线性dp这一块,依旧做到绿题就及时刹车啊,自我水平估测这一块,好了,本次重点依旧是记录过程中的思路(可能错误)回顾纠误,总结分析,自我过程锐评.......其实主要是有趣好玩,嘿嘿嘿,自言自语这一块,平时一坐坐10个多小时,再不跟别人说说话交流交流,我都快憋坏了,自言自语真好玩,自问自答真有趣 (〃'▽'〃)
2025-08-05 19:03:45
968
原创 河南萌新联赛2025第(三)场 M 神魔大战
先对一株草分析如果他的(灵气为正,魔气为负),正负抵消为0,记录一个ans=0为最终输出,那么一但正负抵消=0,就ans+=,这个不必多说,如果正》负,就记录到正数组中,里面主要有几个关键信息1.aa[zz]=a[i]-b[i],这是可以理解成背包里面的体积 2.wa[zz]=b[i],理解成对应的价值 3.sumz+=aa[zz] 4.zz++。ok了,额外说一下,有个好奇怪的地方,看下面我的两种写法,上面的是错误的,下面的是正确的,但是我感觉两种一样,不知道为什么。举个例子,ans=5,
2025-08-01 11:24:59
313
原创 河南萌新联赛2025第(二)场 E 咕咕嘎嘎!!!(easy)
确实,gcd少则10余次,多则30余次,对代码影响确实比较大,我在没有发现时,在测试10一直超时,一点一点对照着找最后才发现了这个原因,看来有时候比较细枝末节的算法也可能会导致超时,这或许就是在提醒我,在编写时就对时间这一块尽可能的优化一点注意一点,能优则优,省的因为这个一直报错超时乱七八糟的,一直罚时,罚分。在实现过程中我发现了几个可能需要关注的点 1.gcd的范围是从2到n,不是到m,。2.是gcd函数的位置,这个我觉得挺隐蔽的,放在外层循环就会超时,放在内层循环就AC了,下面请看我的代码事例。
2025-07-28 11:10:48
223
原创 河南萌新联赛2025第(二)场 C O神
感觉和B题在逆元上一样,我才知道一个重磅消息,1e9+7是个质数,WC,他是个质数,我以前一直以为这就是很普通的一个数,也不知道为什么好多的题都要模上这个,现在才知道,因为他是质数,就可以很方便简单的使用费马小定理了,怪不得,怪不得,好了,回到这道题。概率嘛,这个也简单,高中简单水平的,第i次成功的概率=成功*(1-成功)^(i-1),按照题目要求的,前m-1次就概率乘对应的最小钱数,第m次成功概率=1,那第m次就是m次的最小钱*前m-1次的失败概率,
2025-07-26 10:44:30
259
原创 河南萌新联赛2025第(二)场 B 异或期望的秘密 (二进制异或这一块)
不可能是总共有几个吧,太笼统用不上,唉,什么样的1的信息我们才能用上呢,我们要异或后的1的数量,异或就是相同为0,不同=1,而且异或是相同的位置来异或的,就像是十进制里面的个位和个位,十位和十位,万位和万位,,好的,那么现在明确了,1的位置很重要,他是我们的一个重要参考,,很显然另一个关键信息就是1的数量(废话,题目求的就是这个),综合两者,我们要的一个特殊的数里面要包含1在这个范围内各个数位上1的数量,对,这就是我们要求的(逆元后面再说)好了差不多了,分享一下就完美收官。
2025-07-25 19:00:40
354
原创 河南萌新联赛2025第(二)场:河南农业大学 绝妙A题 一眼让你看懂,没懂打我(补,别打了,只是怎么目的,不知道过程TWT)
剩下的就不必多说了吧,初中水平的总结规律了,,,,,好吧,现在我承认初中知识有点解决不了,但是高中知识绝对可以解决,那看来标题应该改成一眼看懂求什么,怎么求还是要思考一下的,不能瞪眼法秒杀了,失望。你用下面这个程序运行一下再观察一下,说不定你自己就看出来了,懒得看的话,下面也有运行结果。我突然写着写着,发现了一个特别直观简单易懂的让你知道怎么求,求什么怎么求,嘿嘿嘿,发现了没有,1每隔1出现一次,2每隔2出现一次,3每隔3出现一次...哎,最后还是用的区块求和吗,中式题解你赢了,TWT,YWY,VWV;
2025-07-23 21:07:32
212
原创 河南萌新联赛2025第(二)场:河南农业大学 D开罗尔网络的备用连接方案 痛太痛了,我是反面教材
本文记录了作者在解决算法题时遇到的性能问题和调试过程。作者最初使用BFS导致超时,后改用DFS仍无效。最终发现是计算二进制1的个数的函数效率问题:第一个实现使用动态循环和左移导致超时,而第二个固定32次循环和右移实现则通过测试。进一步调试发现,即使使用#define int long long,位运算仍需显式使用1LL以避免数据范围问题。修改后原算法也能通过,验证了问题的根源在于位运算时的类型处理不当。文章展现了算法优化和调试的实际经验,强调了位运算中数据类型细节的重要性。
2025-07-23 20:16:13
259
原创 我决定要好好学一下状压dp----p7859 p2622 p8687 p3869
enmmm,豆包说状压就是用二进制压缩集合状态,那数据量肯定很小,不超过20?25?根据这个差不多就可以锁定一大批了,相关的一些位运算也很简单。
2025-07-22 17:02:58
919
原创 河南萌新联赛2025第(一)场 G最大子段和,但是两段
记得当时学最大连续子段和时,用的的最权威的传奇线段树来写的,虽然很强很NB,但它对我这种小白属实是不太友好,所以赛事就没有去写,现在突然发现好像没有几个去杀鸡焉用牛刀,去用线段树的,好像大部分都是采用了一种动态规划的思想(应该是这么叫的吧?),看了之后发现好简单,好直接,好通俗易懂,简直超劲,超强,超霸口牙!或许需要注意一个小点,下面代码的dp1,dp2还不是最终的前半部分或者后半部分的最大连续子段和,q(前),h(后),这两个才是想要的两部分的最大连续子段和,代码及其演示如下。
2025-07-18 19:18:42
244
原创 7.16 牛客 河南萌新联赛2025第(一)场 B题 代价转移
这种错误原因让豆包找找不出来,你告诉他是因为这个错了,他才给你说什么,这个可能会修改什么主函数,什么函数,什么内在逻辑关键字啥的,哎,没办法,只能特别记忆一下了,还有一个,能开vector尽量开,不要用固定数组,一不留神就会段错误(在写H题就因为这个W了一发TWT),还有开大小时加上2(我记得有一次+1就错了,+2就对了,也不知道为什么,就很离谱,反正多一个又没什么),造他就完了,嘶,好像不是那么简单,建最小堆树,我只知道两种,一种是结构体里面套个重载运算符,wow,发现一个特别小的技巧(?
2025-07-18 11:27:21
354
原创 河南萌新联赛2025第(一)场:河南工业大学 调代码的一些体会
至于其他题,我就没有什么大的收获了,基本就是按部就班的写,其他难的,对我个人的收获自我感觉没有H大,不会的原因大部分也是没有见过,那就很难了,堪比独立创造一个小的数学体系分支,这种题学过的就好简单,nnd,我这么废物,肯定没学过,我已经高考结束1年了,很久没有好好看过数学了TWT,专业课更是没有学过TWT。寄,开局便被A硬控40分钟无果,等做完其他题后再做又花了近一个半小时在这上面,nnd,还是无果,没想到最后发现高中知识解决不了,娘希匹,感觉这次比赛的最大收获可能是H里面对蛇形回路了解的更深了一点吧,
2025-07-16 19:46:37
209
原创 CodeForces - 2123D Binary String Battle
哎,看了一会题,感觉我有一种比较另类的想法,能不能先按他给的串算出获胜最小的k值,然后直接比较不就行了,有dp算这个k值,估计是昨天看了一天dp的题看什么都像dp,胡乱用,要是错了也能算是我更深的理解了这个鬼dp,自封天才这一块。不错不错,也是写到D了,这道Rating1200,我的目标就是Div1,2,3,4小于1200的题,至于那些更难的就交给未来的我吧,这些难度的题搞的差不多后,说不定编程就有一定向上的基础了。wc,按照我刚刚对样例的细致模拟,我发现了,关键可能是让B尽可能的少恢复1的数量。
2025-07-15 21:26:54
280
原创 CodeForces - 2123C Prefix Min and Suffix Max
要是但是这也没什么,换个地方吹空调呗,没手机就没手机,关键是,谁家好人暑假还返校训练一个月,难道这就是进入算法比赛的人的暑假归宿吗,大一参加的大比赛全部打铁,寄,到那里签到题,加稍微简单一点的一做,感觉后面的就和自己无关了,听着看着别人在最后一段时间,时不时的传来巨大的欢呼声,就知道他们又攻克了一个难题,可惜热闹是他们的,我什么都没有,nnd。诶,直接过了,那就这样了,还有,这玩意好像不叫dp,没到那个程度,就是简单的记录了一下状态,判断一下就行了,怪不对Rating才1000。那就好像只有一种情况了,
2025-07-15 20:04:17
258
原创 CodeForces - 2123B Tournament
rating800,也是一道简单题,说实话,简单可能只是说代码什么的没有那么难,逻辑上的难度。很直接,不可能的话,只有可能是最后只要一个人的,纯粹的比拼,一但留存人数>=2,都可以。而且只有最后只要一个人,并且另一个人比自己NB一点,才会绝对的输,但凡一样强,都能靠。enmmmm,初步感觉只需要记录两个关键量,1,比j大的个数,2,小于等于j的个数。nnd,发现一个错误,是选手j,不是分数是j,j是他的次序编号第j位选手。嘿嘿嘿,过了,这个比A简单多了,靠那强无敌的狗运,混到最后,
2025-07-15 16:56:48
241
原创 CF-2123A Blackboard Game
nnd,就怎么简单吗,大不了,我写一个,为咱们代码菜鸡在角落里说句话,确实发现了一点,除去第一个配对的,再向后就是依次加4,而第一个配对的是和他相加对3整除的。证明 0 1 2 3,各自的数是1 0 0 0,那么对于0,没有足够的3,配对,所以A胜。我的错误思路是按照题意,我对每一个a,找了能和他配对的b的集合,试图找到规律。余2,1没有2配对,余3,1没有3配对,所以,只有余0,才可能B胜。A先手,那么B肯定想成功消除,那就是0和3配对,1和2配对,只能说似对非对,nnd,还是没能做的吗,
2025-07-15 16:09:24
383
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅