
刷题
一缕叶
事以密成
展开
-
洛谷P6365 [传智杯 #2 初赛] 众数出现的次数
使用哈希map可变长,还节省了空间,基本的思路就是桶排序的感觉,unordered_map第一个元素是作为数组的下标,然后第二个元素是出现的次数,就是累加的次数,哈希map还是比较好用的,我第一时间没能够想出怎么做,想着用dp去做了。原创 2025-02-27 22:42:46 · 199 阅读 · 0 评论 -
洛谷P11042 [蓝桥杯 2024 省 Java B] 类斐波那契循环数
对于不确定长度的数组用vector容器,这样可以确保不越界,还有记得多使用一下reverse反转数组,在进制转换中也通过好用,整体的思路是好的,只不过对于数组越界中还是没能够有明确的判断。像是这种填空题的话,就直接暴力还更加省时间,在本地算完后直接提交答案即可。原创 2025-02-18 22:01:28 · 480 阅读 · 0 评论 -
洛谷P8707 [蓝桥杯 2020 省 AB1] 走方格
每一步都由上一步得来,即a[i][j]都由a[i-1][j]或则a[i][j-1]得来,最后a[n][m]就是答案,第一时间没有想到用dp,所以想半天想不出来。原创 2025-02-17 22:17:05 · 435 阅读 · 0 评论 -
洛谷P10424 [蓝桥杯 2024 省 B] 好数
也是数位判断,首先这个奇数位位奇数,偶数位为偶数,先排除了所有的偶数,然后将相邻的两位数相加必须为奇数,所有情况都符合就返回ture,否则false,时间复杂度O(n)。原创 2025-02-16 22:19:18 · 346 阅读 · 0 评论 -
洛谷P10901 [蓝桥杯 2024 省 C] 封闭图形个数
学习了一下对于的pair的first,second利用sort中的自定义cmp,根据题目先对second进行排序,就是对每个数字的封闭图案数量进行排序,相同再对数字大小进行排序。num数组对0-9每个数字进行映射。原创 2025-02-11 22:22:35 · 403 阅读 · 0 评论 -
洛谷P8681 [蓝桥杯 2019 省 AB] 完全二叉树的权值
floor向下取整后的数仍然是原来的类型,所以floor输出记得强转。虽然是简单题,就是log2的运用,然后对于同层的数据累加取最大值。原创 2025-02-08 20:09:03 · 284 阅读 · 0 评论 -
洛谷P8742 [蓝桥杯 2021 省 AB] 砝码称重(dp初始)
归纳蓝桥杯的这道题总结了一定对于dp的看法,虽然还没看到y总的动态规划,自己搜了搜上学期算法中学到的01背包问题。首先动态规划问题最重要的是状态转移方程,将问题抽象成数学问题,列出方程就可以得解。以后有更深的见解再更新吧,现在大致看懂了dp解题的大概思路了,基本都是两层循环加优化。原创 2025-02-07 21:17:07 · 330 阅读 · 0 评论 -
P6364 [传智杯 #2 初赛] 1024 程序员节发橙子
67分一个wa一个tle我也不知道,这个是我手搓出来的,感觉结构没什么问题。原创 2025-01-26 23:36:43 · 84 阅读 · 0 评论 -
洛谷P9420 [蓝桥杯 2023 国 B] 子 2023 / 双子数
这里第一题一开始没想到dp,了解了一下dp感觉恍然大悟,还没学到dp,只是有个基本印象,都是基于前面的基础然后后继结点更新,设计的非常精妙,还有就是c++的int的范围是在±2147483647,long也是同理,unsigned会变成两倍的正值,所以超过了20千万的值基本就需要用到longlong了,千万记得不然结果会溢出。第二题就是一个简单的暴力穷举,由于是填空题没有时空限制。先开跟求最大的p,q值大概范围,然后就是枚举剪枝的问题了。小抄一手别的的答案。原创 2025-01-25 22:56:30 · 561 阅读 · 0 评论 -
洛谷刷题1-3
这里很大的问题,主要是cin输入的时候遇到空格,换行就会忽略掉后面的内容,那么如果cin和getline混用的话,cin完后缓冲区中会剩下换行符,保险起见如果两者混用的话最好就是,cin完将缓冲区的所有内容清除掉,cin.ignore(numeric_limits<streamsize>::max(),'\n');这题的思路想复杂了,我还想着排序,其实一个统计函数就好了。比较巧妙,求最小公倍数,看多少个数一次循环,直接求解就好了,N的数量级比较大,一层循环也会超时,也用了点双指针的想法(归并排序)原创 2025-01-23 23:08:41 · 285 阅读 · 0 评论 -
洛谷P10415 [蓝桥杯 2023 国 A] 切割
想复杂了,一重循环就够了,两重循环会超时,还有要注意数据的大小,10的九次方的话int就存不下了,用long。原创 2025-01-23 23:06:19 · 128 阅读 · 0 评论 -
洛谷P8830 [传智杯 #3 练习赛] 评委打分
千万要注意存储的变量或者函数,够不够存,这个最大有1000000个数,假设每个都是100,那么sum的最大值去到了100000000八个零,所以flooat不够存。原创 2025-01-22 22:26:50 · 246 阅读 · 0 评论 -
P8772 [蓝桥杯 2022 省 A] 求和
简单ac这题两重循环的话会爆,不够时间,用前缀和可以优化到n的一次方,题目中求和的各个项可以提出a1到an这n个公共项,那么剩下的就是a2到an,至an的前缀和,先求出a2到an的前缀和,后面的就是n次运算了,不过存储前缀和的数组要用long以上的整型不然会超出空间,数据每个最大是1000,a2到an个数最多是200000,最大的话应该是200000000去到了10的八次方,看到大的数据值,最好就用大一点的整形,空间一般是够的。原创 2025-01-21 22:08:19 · 496 阅读 · 0 评论 -
P8738 [蓝桥杯 2020 国 C] 天干地支
第二种就是将年份加上56(60-4)得到,两种的结果都是一样的,但是我不知道为什么year-4有一个答案是错的,洛谷给不出测试用例就比较难改。这种是数组偏移,其实两种做法的核心都是将2044年%60后的到的数4偏移成0,即将jiazi年与4对应上。偏移值还是不错的,在循环队列中也用到了加偏移值%队列长度。原创 2025-01-21 13:34:10 · 1338 阅读 · 0 评论 -
P8196 [传智杯 #4 决赛] 三元组
想复杂了点,读完数据就可以处理数据,整体数据就是没难度的题,注意边界问题。原创 2025-01-18 22:01:56 · 123 阅读 · 0 评论 -
洛谷P8841 [传智杯 #4 初赛] 竞争得分
注意输入输出格式问题。原创 2025-01-17 22:24:47 · 115 阅读 · 0 评论 -
洛谷P8869 [传智杯 #5 初赛] A-莲子的软件工程学
int 4字节一共32位,带符号就三十一位,数据长度不够需要用long 或者long long来存储.存储整形结果的时候记得看数据范围,简单题一般是范围上出难度,处理数据都不难。原创 2025-01-17 21:42:17 · 232 阅读 · 0 评论 -
洛谷P8717 [蓝桥杯 2020 省 AB2] 成绩分析
这题就是加深了我对整数除法和浮点数除法的概念,5/2的话就是取整,如果对5.0/2就是浮点数除法,得数是准确的2.5.原创 2025-01-10 22:10:10 · 154 阅读 · 0 评论 -
洛谷P8722 [蓝桥杯 2020 省 AB3] 日期识别
用了键值对的形式储存了十二个月,省去了判断的情况,stoi是c++11版本的特性,可以选择出整数出来。substr是切割字符串,第一个是起始位置,后面是切割长度。原创 2025-01-10 22:07:41 · 157 阅读 · 0 评论