- 博客(8)
- 收藏
- 关注
原创 2024“钉耙编程”中国大学生算法设计超级联赛(1)(B,H,A)
预处理a的所有循环串(在字符串a后接上a计算比较方便),枚举b的所有长度为n的字串,进行哈希。位运算都是针对每一位,按位枚举,每一位满足的情况数量相乘就是所有方案数。他想要获得恰好 k 颗星星,请你帮他计算这个最小值。- ai 的代价获得 11 颗星星。- ci 的代价获得 33 颗星星。- di 的代价获得 44 颗星星。小 A 有 n 次获得星星的机会。- bi的代价获得 22 颗星星。
2024-08-16 15:21:15
231
原创 2024牛客暑期多校训练营2题解(B,C,E,H)
对于每一个L(区间的左端点),都找到对应的R(区间右端点),使得经过操作[L,R]后,正好处在(x,y)上,随后的操作都已经经过了(x,y),预处理前缀和,放进一个multimap里,找到大于当前位置满足条件的即可。例如 x = 1010101000,一定有因子8(末尾有三个零),若保证最大公约数为8,y的末尾至少有3个0,又要保证x^y = 8,所以取y = x - lowbit(x);对于顶点数量小于根号n的情况,n^2枚举所有顶点,找出同时包括两个顶点的边,利用这些边求最小生成树。
2024-08-16 15:05:59
302
原创 EPIC Institute of Technology Round August 2024 (Div. 1 + Div. 2)(A-C)
假设在D点拦截,则AD = CD,又因为 CD > BC - BD,则AD >= BC - BD,则CB <= AB,矛盾。,n]的a 排列,鲍勃得到了[1,2,…对于任何 k×k 的子网格,我们使用的颜色必须是成对不同的。如果某个圆(CB <= AB)先到达目标,无论走哪条路,都没有成功的机会。游戏继续进行 n−1轮,之后两个数组都将只剩下一个元素:数组 a 中的 x 和数组 b 中的 y。二维平面上有 n 个圆。你现在的位置是(xs,ys), 你的目标是到达 (xt,yt)而不触及任何圆的周长(
2024-08-15 17:47:55
720
原创 C++支持函数重载的原理--名字修饰
预处理其中最重要的是头文件展开,以Func.h,Func.cpp,Test.cpp为例,头文件展开会生成两个文件,Test.i,Func.i。其中Test.i包含函数的声明和实际调用,Func.i包含函数的声明和定义。链接的时候需要找到函数的地址,c语言链接函数地址直接寻找的是函数名,而c++(Linux下)的函数名修饰规则改为_Z函数名字符个数 函数名 参数首字母.汇编(不是汇编代码,是一个步骤):转换成二进制的机器码,生产Func.o,Test.o.,宏替换,条件编译,去掉注释等等。
2023-12-28 22:46:57
376
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人