一些备忘的知识

存一些备忘的知识~

  1. &运算通常用于二进制取位操作,例如一个数 & 1的结果就是取二进制的最末位。这可以用来判断一个整数的奇偶,二进制的最末位为0表示该数为偶数,最末位为1表示该数为奇数。

  2. priority_queue

    priority_queue2

    priority_queue默认为大根堆。

    重载运算符:

struct node
{
   int w,now;
   bool operator <(const node &x)const {return w>x.w;}
};
priority_queue<node> q;
 

  1. n 个点,若 n-1 条边使其相互连通,则此图为单链或树。

  2. 用sort给pair排序,默认对first升序,当first相同时对second升序。

  3. 奇怪的比赛技巧:
    如果不会写gcd,可以去 algorithm 头文件里找到 __gcd() ( dev 的话可以写了头文件然后直接 ctrl + 左键),然后抄出来~

  4. set

    使用 set 时,可将 emplace 当作 其他 STL 中的 insert 来使用。

  5. lower_bound(val) 返回一个指向当前 set 容器中第一个大于或等于 val 的元素的双向迭代器。

    upper_bound(val) 返回一个指向当前 set 容器中第一个大于 val 的元素的迭代器。

  6. 一些 STL 的对比。

posted @ 2022-07-30 11:57  筱星Shea  阅读(7)  评论(0编辑  收藏  举报