編譯與運行
@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的值