05 2019 档案
摘要:二分: while(l<r) { int mid=(l+r)/2; if(符合条件) r=mid; else l=mid+1; } 固定下二分的写法: 终止条件:l==r; 取mid=(l+r)/2; if(mid符合条件) r=mid; else l=mid+1; 也就是说这里把mid左边. 二分
阅读全文
摘要:指数级枚举:1到n任意选取的所有方案数: #include<bits/stdc++.h> using namespace std; int n,a[1100],vis[1100],cnt,m; inline void dfs(int x) { if(x==n) { for(int i=1;i<=n;
阅读全文
摘要:#include<bits/stdc++.h> using namespace std; int n,a[10][10],vis[10],ans,b[10][10]; inline int read() { int x=0,ff=1; char ch=getchar(); while(!isdigi
阅读全文