位运算
文章平均质量分 67
位运算学习记录
jigsaw_zyx
人生总是来来往往,可凭心而行,可随心而动,千万别等来日方长
展开
-
起床综合困难症(位运算)
我也得了起床综合困难症…啊啊啊好了,停,还是直接开始吧先放题目链接:https://www.luogu.com.cn/problem/P2114题目描述21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳。作为一名青春阳光好少年,atm一直坚持与起床困难综合症作斗争。通过研究相关文献,他找到了该病的发病原因: 在深邃的太平洋海底中,出现了一条名为drd的巨龙,它掌握着睡眠之精髓,能随意延长大家的睡眠时间。 正是由于drd的活动,起床困难综合症愈演愈烈, 以惊人原创 2021-07-26 23:48:34 · 131 阅读 · 0 评论 -
最短哈密顿图(状态dp)
示例1输入40 2 1 32 0 2 11 2 0 13 1 1 0输出:4说明:从0到3的Hamilton路径有两条,0-1-2-3和0-2-1-3。前者的长度为2+2+1=5,后者的长度为1+2+1=4链接:https://ac.nowcoder.com/acm/contest/996/D来源:牛客网思路:问题的建设:1.问题建模描述 :给定一个n个结点,m条有向边(边权为正)的图,求出一条路径满足如下条件:条件一:该路径可以从任意节点开始,不过起点和终点必须相同。.原创 2021-07-24 14:45:41 · 590 阅读 · 0 评论 -
64位整数乘法
题目:求 a 乘 b 对 p 取模的值,1≤a,b,p≤10^18方法一:学以致用!位运算的思路讲b表示为二进制,如果b的当前位是1,就加上它的a的2的当前次方,然后每次取模例:计算 377的二进制 1113(2^0)=33*(2^1)=63*(2^2)=12众所周知3*7=21,而3+6+12也等于21long long mul(long long a,long long b,long long p){ long long ans=0; for(;b;b>>原创 2021-07-23 15:03:14 · 225 阅读 · 2 评论 -
快速幂(快速了解—>秘诀!)
快速幂问题:实践:暴力求数据过大、运算时间长思考:(1)取余运算规则:(a + b) % p = (a % p + b % p) % pa ^ b % p = ((a % p)^b) % p借此可以解决数据过大问题(2)增大基数:例如:2的10次方,即2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 //基数为2,次方为10=(2 * 2) * (2 * 2 )* (2 * 2 )* (2 * 2) *( 2 * 2)=4 * 4 * 4 * 4 *原创 2021-07-23 14:41:24 · 88 阅读 · 0 评论