编译与运行
@echo off
set path=c:mingwbin
g++ -g 274.cpp -o 274.exe
if errorlevel == 1 goto :next
274.exe
:next
然后在终端中运行run即可
对拍
@echo off
set path=c:mingwbin
g++ -g makedata.cpp -o makedata.exe
g++ -g 1.cpp -o 1.exe
g++ -g 2.cpp -o 2.exe
:loop
set path=c:mingwbin
makedata.exe
1.exe
2.exe
set path=c:windowssystem32
fc read1.out read2.out
if errorlevel == 1 pause
goto loop
开栈
//Windows下代码:
int __size__=20<<20;//20MB
char __p__=(char)malloc(__size__)+__size__;
__asm__("movl %0, %%espn"::"r"(__p__));
pragma comment(linker, "/STACK:102400000,102400000")
常数优化
1、选几个主要的循环,定义循环变量为register int
#pragma GCC optimize("-O2")
inline int add(int a,int b){return (a+=b)>=mod?a-mod:a;}
inline int sub(int a,int b){return (a-=b)<0?a+mod:a;}
inline int mul(int a,int b){return 1LLab%mod;}
6、取模运算建议这样写:(这样避免了使用long long以及尽量少的使用%符号
gdb调试
//在终端里运行:
$ gdb 文件名.exe
$ b 13 //在13行设置断点
$ r //运行至断点
$ n //单步跟踪
$ s //进入函数
$ p a //输出变量a的值