- 博客(13)
- 收藏
- 关注
原创 “迎新春,过大年”多校程序设计竞赛部分题解
数据范围有蹊跷:a数组内元素之和不超过5*10^7可以那么可知道将ai去重后的元素个数一定不会超过sqrt(5*10^7)。sqrt(x)表示x的开方。假如去重后的元素个数为m,统计好每个元素出现的次数,那么就可以用二维循环去做。
2024-02-04 21:27:01 1789 1
原创 爬树的甲壳虫(概率dp,数学公式推导,变形)
这是一个很有意思的概率dp题,最开始,我用传统概率dp去做,从起点推到终点进行决策,发现推导出来的dp递推式如果直接实现的话是得不到正确答案的,因为所有的情况始终会包含E0的数学期望,同时E0的数学期望也是未知,这样就陷入了一个递推循环当中。递推公式转化为:dp(k)=(dp(k−1)+1)(1−pk)+(dp(k−1)+1+dp(k))pk,,在通过变形,就可以直接用。因此我们可以重新定义dp的含义,令dp[i]为从树根到高度i所需要的时间的期望值,那么就可以将。dp[i-1]来表示dp[i]。
2024-01-24 11:45:11 412
原创 Educational Codeforces Round 161 D && AcWing 4654. 消除游戏
两题非常相似,都是用这一轮被删除的元素去更新下一轮可能被删除的元素,这样的话用双链表来实现的时间复杂度应该是接近于O(n)。但是ACWING上的这样的这一题用set会被卡,平时能用手写双链表就手写吧。
2024-01-24 11:25:41 365
原创 集美大学“第15届蓝桥杯大赛(软件类)“校内选拔赛补题
我认为非常典型且出的好的一个数学题,不难发现,如果两个数相乘的所有质因数的个数都为偶数,那么该乘积一定为完全平方数,因此对于每个数的每个质因数个数的奇偶性求出,若是两个数的每个质因数的奇偶性一一对应相同,那么这两个数的乘积一定是平方数,将每个数的每个奇数位的质因数乘积放入一个set当中,去重输出set集合的个数就是正确答案,典型最短路模板题,跑一遍dij算法,注意节点更新后,将颜色状态更新到堆中,出队时和当前更新边的颜色做一个判断,如果颜色相同路径不变,颜色不同,那么路径乘以base即可。
2024-01-22 01:01:33 1534
原创 Codeforces Round 907 (Div. 2)(A-D)个人题解
思路:对于每个删除的节点之间,一定是同步删除的,所以想要最终实现一个不完全升序,那么就一定要保证最开始,两个节点之间是一个不完全升序,否则无论都无法达到最后的不完全上升数组。
2023-10-31 15:28:29 978 3
原创 Codeforces Round 906 (Div. 2)个人题解(A-D)
由a1+a2==a2+a3可得a1==a3同理:a3==a5,a5==a6可知奇数位相等,同理偶数位也相等。
2023-10-29 13:23:39 271 1
原创 湖南警察学院程序设计新生赛周赛2
那么一种书对于每一个书架都有放和不放两种选择,然后减去这一种书在所有书架都不放的情况,那么得到的就是这一种书的所有合理的放法,又由于有n种书,所有最后的合理的摆放情况是。那么两个数可以都经历数次变成自己的因数的操作,那么最后变成相同的那个数就是这两个数的最大公因数,又题目要我们求最大的这个相同的数,那么这个点就是最让这个点右边的子串最长且不重复的那个点。最后求max得到整个序列的最长上升并且连续的子序列,最后再将最长上升子序列的剩下的元素操作得到最少操作次数,大家能理解就理解吧,不能理解也没关系。
2022-11-24 21:37:16 411
原创 湖南警察学院新生训练赛第1场题解
草稿纸上模拟一下发现肯定不行,要么直接一步走到,要么三步((1,1)-->(2,1)-->(2,2)-->(1,2)),要么五步((1,1)-->(2,1)-->(2,2)-->(2,3)-->(1,3)-->(1,2)),七步,九步......。纯暴力题,来两次循环将字符串进行遍历,第一次循环看看各种缩写出现的次数,WB出现次数用a[0]表示,MB出现次数用a[1]表示,DH出现次数用a[2]表示,LS出现次数用a[3]表示,E出现次数用a[4]表示。我就只需要把第一个字符串之前出现过的字符标记一下。
2022-11-19 00:12:14 430
原创 湖南警察学院程序设计新生练习赛2题解
有一个数字魔法,给你一个正整数n,如果n为偶数,就将他变为n/2, 如果n为奇数,就将他变为乘3加1,不断重复这样的运算,经过有限步之后,一定可以得到1,牛牛为了验证这个魔法,决定用一个整数来计算几步能变成1。今天星期一,明天必然星期二。如果我告诉大家,今天礼拜几,你能帮我推算出明天星期几吗?已知,我们对于星期几的日期(周一到周日)简写如下: 1,2,3,4,5,6,7。这次牛牛又换了个数列,他想计算:1+1/2+1/3+…求fib数列的第n项,前几项是1,1,2,3,5,每一项都等于前面两项的和。
2022-11-10 15:35:29 741 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人