收集一些关于OI/ACM的奇怪的东西……

一、代码:

1、求逆元(原理貌似就是拓展欧几里得,要求MOD是素数):

int inv(int a) {

    if(a == 1) return 1;

    return ((MOD - MOD / a) * inv(MOD % a)) % MOD;

}

 2、底层优化(正确性未验证):

int cmp(int a) {if (!a) return 0; return a < 0 ? -1 : 1;}

int cmp(int a) {return (a >> 31) + (-a >> 31 & 1);}

  

int abs(int x) {return x > 0 ? x : -x;}

int abs(int x) {int y = x >> 31; return (x + y) ^ y;}

  

x = (x == a ? b : a)

x ^ = a ^ b

//等于0返回0,大于0返回1,小于0返回-1

int sgn(double x) {

    if(fabs(x) < EPS) return 0;

    return x > 0 ? 1 : -1;

}

int sgn(double x) {

    return (x > EPS) - (x < -EPS);

}



int fastMax(int x, int y) {return (((y-x)>>(32-1))&(x^y))^y;}

int fastMin(int x, int y) {return (((y-x)>>(32-1))&(x^y))^x;}

 3、扩栈,这玩意儿在OJ上用能防爆?

#pragma comment(linker, "/STACK:1024000000,1024000000")  

 

二、神牛blog

matrix67

ZKW

watashi

 

三、专题

动态规划系列:

数位dp模板

字符串系列:

【专辑】AC自动机

计算几何系列:

计算几何相关资料+题目推荐(不定期补充)——gbr的馒头屋

[专题学习][计算几何]

ACM计算几何题目推荐

数学系列:

POJ【数论/组合/博弈论】题目列表

 

四、(伪)算法教学

字符串系列:

后缀数组学习笔记——罗穗骞倍增算法代码

数学系列:

平面、空间分割最大化

线性筛法

01分数规划

拓展欧几里得求解线性同余方程组——POJ2891

二次同余方程的解

ZJU2004 Commedia dell'arte - 八数码问题有解的条件及其推广

组合计数系列:

Polya定理总结

数论系列:

ACM数论总结

数据结构系列:

高级数据结构之树状数组

主席树——POJ2104

图论系列:

2-SAT输出解的简便方式(附证明)——POJ3683

次小生成树

【AHOI2013复仇】两道有关删边后最短路径维护的猥琐题

JAVA:

ACM之java速成

JAVA之BigInteger(转)【转】【很好用啊】

其他:

IO/ACM中来自浮点数的陷阱(收集向)

正则表达式30分钟入门教程

人造奇迹——二进制位运算的运用

[转帖]typedef使用三部曲

 

五、OI/ACMer感谢贴/退役贴/经验贴/等等:

ACMer感想帖/退役帖汇总

ACRush 楼天成回忆录

ACRush Topcoder问答语录

WJMZBMR的OI退役贴

大牛对ACM入门菜鸟的一些话——吴垠

edward_mj退役经验帖

acm总结帖_By AekdyCoin

【转】赞一下huicpc035

【转】lonekight@xmu·ACM/ICPC 回忆录

【转】[退役]纪念我的ACM——headacher@XDU

【转】ACM/ICPC生涯总结暨退役宣言—alpc55

 

六、解题报告

2014多校题解官方发布

 

七、其他:

ACM核武器——wuyiqi

热门OJ介绍

数据结构动态演示1:http://www.comp.nus.edu.sg/~stevenha/visualization/

数据结构动态演示2:http://www.cs.usfca.edu/~galles/visualization/Algorithms.html

你可能感兴趣的:(ACM)