题目来源: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相关推荐

  1. CF 333D Characteristics of Rectangles

    因为是最小值的最大值,首先我们想到用二分来查找答案. 剩下的就是实现判断mid是否可行的方法. 我们用vis[i][j]表示是否某行的i,j是大于等于mid的. 当下次出现i,j便说明2行组成一个矩形 ...

  2. Codeforces 333D Characteristics of Rectangles

    二分. 收获:二分判断函数中,不一定非要解合法才返回真,只要它能单调的逼近真正的解即可.比如这道题中一些值在矩阵中不一定存在但是判断函数仍然返回1,最终得到的答案一定是存在的. 代码: #includ ...

  3. 【打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 ...

  4. 【打CF,学算法——二星级】CodeForces 292A SMSC (模拟)

    [CF简介] 提交链接:CF 292A 题面: A. SMSC time limit per test   2 seconds memory limit per test  256 megabytes ...

  5. 『参考』.net CF组件编程(4)——为自定义组件添加工具箱图标!

    前言: 在前三篇的文章中,和大家一起创建了一个用于TCP连接检测的小组件,如果你记不得了,可以通过以下链接去回顾一下: 『参考』.net CF组件编程(1)--基础之后 『参考』.net CF组件编程 ...

  6. R语言ggplot2可视化、在可视化区域中自定义添加多个大小不同矩形阴影区域、自定义配置大小不同矩形阴影区域的颜色(Adding multiple shadows/rectangles)

    R语言ggplot2可视化.在可视化区域中自定义添加多个大小不同矩形阴影区域.自定义配置大小不同矩形阴影区域的颜色(Adding multiple shadows/rectangles) 目录

  7. matplotlib可视化基本散点图、在图像多个指定区域绘制方框、进行自定义色彩填充(Draw Multiple Rectangles)

    matplotlib可视化基本散点图.在图像多个指定区域绘制方框.进行自定义色彩填充(Draw Multiple Rectangles) 目录

  8. OC对象 vs CF对象

    2019独角兽企业重金招聘Python工程师标准>>> OC对象 vs CF对象 在ARC场景下,对象所有权没有转换 使用__bridge关键字即可实现CF对象和OC对象之间的自由转 ...

  9. CF 990A. Commentary Boxes【数学/模拟】

    [链接]:CF [题意]:对于一个数n,每次加一的代价是a,每次减一的代价是b,求被m整除时的最小代价. [分析]:分情况讨论,自己多举几个栗子. [代码]: #include<cstdio&g ...

  10. SAP QM QE02 修改检验结果,报错 -No characteristics were found–

    SAP QM QE02 修改检验结果,报错 -No characteristics were found– 已经执行完事务代码QE01为检验批9000000208的0010工序录入好了检验结果. 试图 ...

最新文章

  1. js mysql替换_JavaScript_js使用正则实现ReplaceAll全部替换的方法,JS 字符串有replace() 方法。但这 - phpStudy...
  2. Spring框架中的设计模式(一)
  3. Quartz关闭超时订单
  4. 「Tensorflow」错误tensorflow.python.framework.errors_impl.UnknownError: 2 root error(s) found.
  5. linux 系统lv扩展_Linux增加LV(逻辑卷)容量
  6. Jdom的SAXBuilder解析String形式的XML
  7. vcsa清单配置和事件备份
  8. server.xml拒绝访问 无法修改
  9. [python教程入门学习]使用Python六步制作小鸟管道游戏(附源码)
  10. 扇贝单词里有计算机英语吗,扇贝单词英语版
  11. 【艾特淘】直通车数据化选款技巧
  12. Windows下禁止软件wps热点自启动和后台运行
  13. 国网站直接SHOPPING经验之总结, 和美国代购说拜拜~~新加 如何注册PAYPAL~~~~
  14. labview dsn连接mysql_labview使用DSN与数据库的连接包括access,mysql
  15. Win11任务栏消息提醒功能如何开启教学
  16. bug记录--------JSON parse error:Cannot deserialize value of type `com.test.EnumTest` from String
  17. 大人,时代变了——手游抽卡异军突起
  18. 基于安卓android studio 的 菜谱食谱APP设计
  19. 信阳师院计算机与信息技术学院,徐丽娟
  20. mysql like多个条件or关系_字段like多个条件(or关系)简写

热门文章

  1. 【建议收藏】MySQL中的自增id超出上限的问题
  2. 数据结构哈夫曼树实验报告
  3. 模板 31 : 并查集(围棋棋子连通)
  4. php解决latin1转码,MySQL latin1字符集PHP读取中文乱码解决方案
  5. 记录自己给自己的代码挖坑
  6. 计算机信息技术发展方向,谈谈计算机信息技术发展方向及应用
  7. 解决 uboot data abort报错
  8. Qt/C++编写物联网管理平台28-模拟工具
  9. 小程序下拉加载更多数据
  10. DNS服务器显示为fec0,DNS服务器地址为fec0