bzoj5085: 最大
暴力是4方的,开始我只3方(扫描的时候更新当前最大)
二分+暴力可以做到m^2logMAX
二分答案,暴力枚举可行的两个位置形成一段,对于段,最多只会有m^2种情况。
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std; int n,m,a[][],bef[];
bool v[][];
bool check(int mid)
{
memset(v,false,sizeof(v));
for(int i=;i<=n;i++)
{
int last=;
memset(bef,,sizeof(bef));
for(int j=;j<=m;j++)
{
if(!(a[i][j]<mid))
{
for(int k=last;k;k=bef[k])
{
if(v[k][j])return true;
v[k][j]=true;
}
bef[j]=last;
last=j;
}
}
}
return false;
}
int main()
{
freopen("a.in","r",stdin);
freopen("a.out","w",stdout);
int mmin=,mmax=;
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
{
scanf("%d",&a[i][j]);
mmax=max(mmax,a[i][j]);
mmin=min(mmin,a[i][j]);
} int l=mmin,r=mmax,ans;
while(l<=r)
{
int mid=(l+r)/;
if(check(mid))
{
ans=mid;
l=mid+;
}
else r=mid-;
}
printf("%d\n",ans);
return ;
}
bzoj5085: 最大的更多相关文章
- 【BZOJ5085】最大 鸽巢原理
[BZOJ5085]最大 Description 给你一个n×m的矩形,要你找一个子矩形,价值为左上角左下角右上角右下角这四个数的最小值,要你最大化矩形的价值. Input 第一行两个数n,m,接下来 ...
- 【bzoj5085】最大(二分+乱搞)
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=5085 这道题我们可以先二分答案,然后转化为判定是否有四角权值>=mid的矩形. ...
- 【bzoj5085】最大 二分+暴力
题目描述 给你一个n×m的矩形,要你找一个子矩形,价值为左上角左下角右上角右下角这四个数的最小值,要你最大化矩形的价值. 输入 第一行两个数n,m,接下来n行每行m个数,用来描述矩形 n, m ≤ 1 ...
- bzoj5085: 最大 暴力 二分
Code: #include<cstdio> #include<algorithm> #include<cstring> #include<iostream& ...
随机推荐
- [Windows Server 2003] ASP.net安装方法
★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:安装ASP.n ...
- java编码终极探秘
首先要明白,java中string字符串都是unicode码保存的,只不过显示的时候会根据一定的规则,比如GBK或者是UTF-8去对照表中查找进行显示. 之所以会乱码就是因为使用错了编码方式. 数据是 ...
- JavaScript:颜色辨别
<script> //参考文章:http://www.cnblogs.com/xuechenlei/p/5940729.html //游戏页面:http://www.webhek.com/ ...
- C# 设定时间内自动关闭提示框
通过程序来自动关闭这个消息对话框而不是由用户点击确认按钮来关闭.然而.Net framework 没有为我们提供自动关闭MessageBox 的方法,要实现这个功能,我们需要使用Window API ...
- POJ_3013_最短路
Big Christmas Tree Time Limit: 3000MS Memory Limit: 131072K Total Submissions: 23630 Accepted: 5 ...
- day09-文件的操作
目录 文件的基本操作 文件 什么是文件 如何使用文件 打开&关闭文件 打开&关闭文件 del f和f.close()的区别 文件路径 打开模式(不写默认是r) 编码格式 补充(open ...
- 创建全局函数 匹配查找 std::map
std::map<CString, CString> m_NameToType; 所有文件之外声明一个函数 在要用到的地方 加入存储的东西 extern std::map<CStr ...
- 在vue中通过js动态控制图片按比列缩放
1.html 通过外层的div来给img对应的class,隐藏的img是得到img图片请求回来时的原始尺寸.外层div是固定大小,因此,图片有两种情况去适应外部div的尺寸.一种是宽度大于高度的情况, ...
- iPhone设备当前IP和SSID的获取
#import <Foundation/Foundation.h> typedef void(^Complation)(NSString *res); @interface WIFIMan ...
- P2884 [USACO07MAR]每月的费用Monthly Expense
题目描述 Farmer John is an astounding accounting wizard and has realized he might run out of money to ru ...