DEV C++擴充套件棧空間
-Wl,--stack=64000000000
帶權二分圖匹配
建一個超級源點S,超級匯點T
把左邊的點的點權作為權值,連一條S到左邊的點的邊
把右邊的點的點權作為權值,連一條T到右邊的點的邊
跑Dinic
程式碼技巧
除錯資訊的處理
fprintf(stderr,"%d\n",a);
FILE *f=fopen("gg.debug","w");
fprintf(f,"%d\n",gg);
列舉字串
char s[1000] scanf("%s",s); int l=strlen(s);//不要放在迴圈裡面 for(int i=0;i<l;i++) { do something ;;; }
或者
for(int i=0;s[i];i++)
讀入的時候
while(~scanf("%d",&n)) while(cin>>n!=EOF)
並查集防卡
$50%$的概率把p1的父親設成p2
$50%$的概率把p2的父親設成p1