Colin's Blog
Recent content on Colin's Blog
马上订阅 Colin's Blog RSS 更新: https://blog.oyyko.com/index.xml
压行技巧
finalwind42@gmail.com (Oyyko)
2021年12月16日 08:00
压行技巧
1
1for(init;check;update)2{34}5XXX可以改成
1for(init; check || (XXX,0) ; update)2{3 4}2
逗号的用法
1if()2{3 AAA;4 BBB;5 CCC;6 return DDD;7}可以改成
1if()2{3 return AAA,BBB,CCC,DDD;4}3
赋值语句和普通表达式的值
1A=func(B);2printf("%d",A);可以改为
1printf("%d", A=func(B));4
短路语句
1if(AAA)2BBB可以写成
1(!AAA)||BBB;当AAA为假,则短路,不计算BBB
当AAA为真,计算BBB
5
利用for
1for(int i=1;i<=n;i++)2{3 for(int j=1;j<=n;j++)4 printf("%d",a[i][j]);5 puts("");6}可以改为
1for(int i=1;i<=n;i++,puts(""))2 for(int j=1;j<=n;j++)3 printf("%d",a[i][j]);6
综合运用例如
1int find(int x)2{3 return fa[x]==x?x:fa[x]=find(fa[x]);4}并查集