09 2020 档案

快读
摘要:快读 int 板子qwq inline int read(){ int s=0,w=1; char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();} while(ch>='0'&&ch<='9') s=s*10+ch 阅读全文

posted @ 2020-09-23 00:08 aiyi0325 阅读(150) 评论(0) 推荐(0)

常见的二进制位的变换操作
摘要:列举一些常见的二进制位的变换操作 摘自https://blog.csdn.net/a1351937368/article/details/77746574/ 去掉最后一位 101101->10110 x >> 1 在最后加一个0 101101->1011010 x << 1 在最后加一个1 1011 阅读全文

posted @ 2020-09-10 00:07 aiyi0325 阅读(316) 评论(0) 推荐(0)

异或
摘要:异或是位运算,当且仅当两边不同时为真 即 11 = 00 = 0; 10 = 01 = 1; 用法: 1. 判断二进制数中1的个数 例如: a = 1010,利用a ^= (a - 1)每次能去掉最右边那个1,循环n次a ^= (a - 1) 后a 就会等于0000即a=0, 则原来a中一共有n个1 阅读全文

posted @ 2020-09-03 21:27 aiyi0325 阅读(181) 评论(0) 推荐(0)

并查集
摘要:并查集:一种十分优美的数据结构 支持: 合并两个集合 查询两个元素是否在同一个集合中 时间复杂度仅为O(1)!! 实现方法: 1.把每一个元素x放入她自己的集合p[x]中,p[x]即为x的父节点(初始时x的父节点就是自己) 2.find函数:找到x的父节点 int find(int x) { if( 阅读全文

posted @ 2020-09-02 23:25 aiyi0325 阅读(53) 评论(0) 推荐(0)

二分图
摘要:####什么是二分图? 二分图,就是能把图内所有元素划分成两个集合,且集合内没有边相连的图 ####二分图有什么性质? 如果图中有奇数环,则该图不是二分图 染色法求二分图 #include <cstring> #include <iostream> #include <algorithm> usin 阅读全文

posted @ 2020-09-02 22:47 aiyi0325 阅读(134) 评论(0) 推荐(0)

导航