辣鸡模板库

来源:互联网 发布:csgo 服务器优化 编辑:程序博客网 时间:2024/04/29 16:21

LL*LL取模

有一种复杂度加多个log的方法,
或者把它拆成两半,
这里还有一种Yves___由提供的黑科技:(巧妙的利用了C++的爆炸特性)

LL mult( LL A, LL B, LL Mo ){    LL temp = ( ( LL ) ( ( db ) A*B/Mo+1e-6 ) * Mo );    return A*B - temp;}

(这个可能会错啊QwQ)

阶乘O(n)逆元

有性质:

(n!)p2=(n+1)((n+1)!)p2

证明显然。

对拍.bat

留个底,免得又忘了。。。

@echo off:frprogram_sj  //出数据程序peogram  //程序program_bl  //暴力fc 1.out 2.out if errorlevel 1 goto edgoto fr:edpause

Splay辣鸡模板

跑的非常慢,可能是因为struct吧QwQ

void merge(int e){    int l=b[e].l,r=b[e].r;    b[e].mx=max(b[l].mx,max(b[r].mx,b[e].v));    b[e].mi=min(b[l].mi,min(b[r].mi,b[e].v));    b[e].co=b[l].co+b[r].co+1;}void UP(int q){    int t=b[q].fa;    if(b[t].l==q)    {        b[t].l=b[q].r;        b[b[q].r].fa=t;        b[q].r=t;    }else    {        b[t].r=b[q].l;        b[b[q].l].fa=t;        b[q].l=t;    }    if(b[b[t].fa].l==t)b[b[t].fa].l=q;        else b[b[t].fa].r=q;    b[q].fa=b[t].fa;    b[t].fa=q;    merge(t);    merge(q);}bool SD(int q){return q==b[b[q].fa].l;}void rotate(int q,int w){    while(b[q].fa!=w)    {        if(b[b[q].fa].fa!=w)            if(SD(q)==SD(b[q].fa))UP(b[q].fa);            else UP(q);        UP(q);    }    if(!w)root=q;}int search(int q,int w){    if(b[b[q].l].co>=w)return search(b[q].l,w);    w-=b[b[q].l].co+1;    return w?search(b[q].r,w):q;}

Sublime Text

Sublime Text中的C++编译文件
(我也不知道为什么要放上来)

{    "encoding": "utf-8",    "working_dir": "$file_path",    "shell_cmd": "g++ -Wall -std=c++11 \"$file_name\" -o \"$file_base_name\"",    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",    "selector": "source.c++",    "variants":       [        {             "name": "build",            "shell_cmd": "g++ \"$file\" -o \"$file_base_name\" -g"        },        {        "name": "Run",            "shell_cmd": "g++ \"$file\" -o \"$file_base_name\" -g && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""        },          {        "name": "Run Full Stack",              "shell_cmd": "g++ \"$file\" -o \"$file_base_name\" -Wl,--stack=268435456 && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""          },          {        "name": "Run with o2",              "shell_cmd": "g++ \"$file\" -o \"$file_base_name\" -Wl,--stack=268435456 && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""          },          {        "name": "Open GDB",              "shell_cmd": "start cmd /k gdb \"${file_base_name}\""        }    ]}
1 0
原创粉丝点击