CF-333D- Characteristics of Rectangles
题目来源:http://codeforces.com/problemset/problem/333/D
题意就是找一个矩形,ans是四个顶点的最小值,求ans的最大值
想了好久的DP,没想到 有空再想想
最后是二分加搜索
说不清 看代码比较好理解
就是把每一列大于mid的位置记录 然后找下一列是否会重叠,如果重叠则证明还存在更优的 然后二分
代码如下:
#include <iostream>
#include <cstdio>
#include <cstring>
#define MAXN 1005
using namespace std;
int n,m,maxv,ans;
int a[MAXN][MAXN];
bool vis[MAXN][MAXN];
int max(int A,int B)
{if(A>B)return A;elsereturn B;
}
bool find(int mid)
{memset(vis,false,sizeof(vis));int set[MAXN];for(int i=0;i<n;i++){int sum=0;for(int j=0;j<m;j++){if(a[i][j]>=mid){set[sum]=j;sum++;}}for(int j=0;j<sum-1;j++){for(int k=j+1;k<sum;k++){if(vis[set[j]][set[k]]){return true;}vis[set[j]][set[k]]=true;}}}return false;
}
int main()
{while(~scanf("%d%d",&n,&m)){maxv=0;ans=0;for(int i=0;i<n;i++){for(int j=0;j<m;j++){scanf("%d",&a[i][j]);maxv=max(maxv,a[i][j]);}}int l=0;int r=maxv;while(l<=r){int mid=(l+r)/2;if(find(mid)){l=mid+1;ans=max(ans,mid);}else{r=mid-1;}}printf("%d\n",ans);}return 0;
}
CF-333D- Characteristics of Rectangles相关推荐
- CF 333D Characteristics of Rectangles
因为是最小值的最大值,首先我们想到用二分来查找答案. 剩下的就是实现判断mid是否可行的方法. 我们用vis[i][j]表示是否某行的i,j是大于等于mid的. 当下次出现i,j便说明2行组成一个矩形 ...
- Codeforces 333D Characteristics of Rectangles
二分. 收获:二分判断函数中,不一定非要解合法才返回真,只要它能单调的逼近真正的解即可.比如这道题中一些值在矩阵中不一定存在但是判断函数仍然返回1,最终得到的答案一定是存在的. 代码: #includ ...
- 【打CF,学算法——二星级】Codeforces Round #313 (Div. 2) B. Gerald is into Art(水题)...
[CF简单介绍] 提交链接:http://codeforces.com/contest/560/problem/B 题面: B. Gerald is into Art time limit per t ...
- 【打CF,学算法——二星级】CodeForces 292A SMSC (模拟)
[CF简介] 提交链接:CF 292A 题面: A. SMSC time limit per test 2 seconds memory limit per test 256 megabytes ...
- 『参考』.net CF组件编程(4)——为自定义组件添加工具箱图标!
前言: 在前三篇的文章中,和大家一起创建了一个用于TCP连接检测的小组件,如果你记不得了,可以通过以下链接去回顾一下: 『参考』.net CF组件编程(1)--基础之后 『参考』.net CF组件编程 ...
- R语言ggplot2可视化、在可视化区域中自定义添加多个大小不同矩形阴影区域、自定义配置大小不同矩形阴影区域的颜色(Adding multiple shadows/rectangles)
R语言ggplot2可视化.在可视化区域中自定义添加多个大小不同矩形阴影区域.自定义配置大小不同矩形阴影区域的颜色(Adding multiple shadows/rectangles) 目录
- matplotlib可视化基本散点图、在图像多个指定区域绘制方框、进行自定义色彩填充(Draw Multiple Rectangles)
matplotlib可视化基本散点图.在图像多个指定区域绘制方框.进行自定义色彩填充(Draw Multiple Rectangles) 目录
- OC对象 vs CF对象
2019独角兽企业重金招聘Python工程师标准>>> OC对象 vs CF对象 在ARC场景下,对象所有权没有转换 使用__bridge关键字即可实现CF对象和OC对象之间的自由转 ...
- CF 990A. Commentary Boxes【数学/模拟】
[链接]:CF [题意]:对于一个数n,每次加一的代价是a,每次减一的代价是b,求被m整除时的最小代价. [分析]:分情况讨论,自己多举几个栗子. [代码]: #include<cstdio&g ...
- SAP QM QE02 修改检验结果,报错 -No characteristics were found–
SAP QM QE02 修改检验结果,报错 -No characteristics were found– 已经执行完事务代码QE01为检验批9000000208的0010工序录入好了检验结果. 试图 ...
最新文章
- js mysql替换_JavaScript_js使用正则实现ReplaceAll全部替换的方法,JS 字符串有replace() 方法。但这 - phpStudy...
- Spring框架中的设计模式(一)
- Quartz关闭超时订单
- 「Tensorflow」错误tensorflow.python.framework.errors_impl.UnknownError: 2 root error(s) found.
- linux 系统lv扩展_Linux增加LV(逻辑卷)容量
- Jdom的SAXBuilder解析String形式的XML
- vcsa清单配置和事件备份
- server.xml拒绝访问 无法修改
- [python教程入门学习]使用Python六步制作小鸟管道游戏(附源码)
- 扇贝单词里有计算机英语吗,扇贝单词英语版
- 【艾特淘】直通车数据化选款技巧
- Windows下禁止软件wps热点自启动和后台运行
- 国网站直接SHOPPING经验之总结, 和美国代购说拜拜~~新加 如何注册PAYPAL~~~~
- labview dsn连接mysql_labview使用DSN与数据库的连接包括access,mysql
- Win11任务栏消息提醒功能如何开启教学
- bug记录--------JSON parse error:Cannot deserialize value of type `com.test.EnumTest` from String
- 大人,时代变了——手游抽卡异军突起
- 基于安卓android studio 的 菜谱食谱APP设计
- 信阳师院计算机与信息技术学院,徐丽娟
- mysql like多个条件or关系_字段like多个条件(or关系)简写