- 博客(7)
- 收藏
- 关注
原创 AT_abc422_d [ABC422D] Least Unbalanced 题解
本文讨论了如何构造一个长度为2^N的非负整数序列,使其元素和为给定的K,同时最小化序列的不均衡度。不均衡度定义为在N次操作中每次将序列两两求和并计算当前最大值与最小值差的最大值。关键思路是将K尽可能均匀地分成2^N份:若K能被2^N整除,则直接分配相同的值,此时不均衡度为0;否则,通过递归将K分成差值不超过1的两部分,最终构造出最大差值为1的序列,这是最优解。代码实现了这一分治过程,输出满足条件的序列。
2025-09-14 21:02:09
676
原创 AT_abc405_c [ABC405C] Sum of Product
题目要求计算数列 $A$ 中所有不同元素对的乘积之和。通过数学推导,可以将该问题转化为利用前缀和来高效求解。具体实现是维护一个前缀和数组,在遍历数组时,将当前元素与前缀和相乘并累加结果。这种方法的时间复杂度为 $O(N)$,适用于大规模数据。代码简洁高效,直接实现了这一思路。
2025-08-31 21:50:46
860
原创 题解:CF2072C Creating Keys for StORages Has Become My Main Skill
本文介绍了解决CF2072C题目的思路和代码实现。题目要求构造长度为n的数组,使其按位或结果为x,同时使得数组的MEX值(最小缺失非负整数)最大化。关键在于贪心策略:尽可能包含0到n-1的连续自然数,当这些数的或运算结果无法达到x时就补上x。代码通过遍历0到n-1的数进行或运算,当发现无法满足条件时直接填充x,从而保证结果满足题目要求。该方法高效简洁,适用于大规模输入数据。
2025-08-31 20:01:03
979
原创 题解:AT_abc386_c [ABC386C] Operate 1
这篇文章讨论了一个字符串变换问题,题目允许对原字符串进行最多一次操作(插入、删除或替换字符)来得到目标字符串。作者通过分析指出,当两字符串长度相差1时,应使用插入或删除操作;当长度相同时,应使用替换操作。代码实现中,作者巧妙地将插入操作转化为删除操作处理,并提供了详细的判断逻辑。最终根据字符串长度关系和字符差异情况,输出能否通过最多一次操作完成转换的结果。
2025-08-31 19:07:42
1265
原创 从 unordered_map 到 custom_hash,从 TLE 到 AC——如何防止unordered_map被卡
本文介绍了解决哈希表题目时使用unordered_map的优化过程。初始使用标准unordered_map出现TLE,原因是默认哈希函数导致大量冲突。通过自定义splitmix64哈希函数解决冲突问题。进一步优化包括预分配空间(reserve)和调整负载因子(max_load_factor),将运行时间从4秒降至3秒左右。最终方案结合了随机哈希和空间预分配策略,有效提升了unordered_map在极端数据下的性能表现。
2025-08-30 15:10:41
897
1
原创 easyx配置及使用
EasyX Graphics Library 是针对 Visual C++ 的免费绘图库,支持 VC6.0 ~ VC2022,简单易用,学习成本极低,应用领域广泛。
2025-02-12 15:47:28
688
hcml.apk
2024-05-25
deno deploy ipv4访问不了,如何解决?
2025-09-09
电脑运行内存居高不下
2025-06-17
win11任务栏显示bug
2025-05-29
桌面版mc整合包启动失败
2025-04-19
(idea mc模组开发环境配置)
2024-05-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人