bzoj5085: 最大 暴力 二分
Posted guangheli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bzoj5085: 最大 暴力 二分相关的知识,希望对你有一定的参考价值。
Code:
#include<cstdio> #include<algorithm> #include<cstring> #include<iostream> #include<string> using namespace std; void setIO(string a){ freopen((a+".in").c_str(),"r",stdin); } const int maxn=1000+3; int n,m,val[maxn][maxn],v[maxn], c[maxn][maxn]; bool check(int delta){ int cnt=0; for(int i=1;i<=m;++i) for(int j=1;j<=m;++j) c[i][j]=0; for(int i=1;i<=n;++i) { cnt=0; for(int j=1;j<=m;++j) if(val[i][j]>=delta) v[++cnt]=j; for(int i=1;i<cnt;++i) for(int j=i+1;j<=cnt;++j) { if(c[v[i]][v[j]]) return true; c[v[i]][v[j]]=true; } } return false; } int main(){ //setIO("input"); int l=1000000000,r=0,ans=0; scanf("%d%d",&n,&m); for(int i=1;i<=n;++i) for(int j=1;j<=m;++j) scanf("%d",&val[i][j]),l=min(l,val[i][j]),r=max(r,val[i][j]); while(l<=r){ int mid=(l+r)>>1; if(check(mid)) ans=mid,l=mid+1; else r=mid-1; } printf("%d",ans); return 0; }
以上是关于bzoj5085: 最大 暴力 二分的主要内容,如果未能解决你的问题,请参考以下文章
BZOJ 4556: [Tjoi2016&Heoi2016]字符串(后缀数组 + 二分答案 + 主席树 + ST表 or 后缀数组 + 暴力)