我们发现我们可以对每一个点维护其还没有用过的矩形中最小的几个,记得判重。

#pragma GCC optimize("-O2")
#include<bits/stdc++.h>
using namespace std;
#define sight(c) ('0'<=c&&c<='9')
#define LL long long
#define M 1007
inline void read(int &x){static char c; static int b;for (b=1,c=getchar();!sight(c);c=getchar()) if (c=='-') b=-1;for (x=0;sight(c);c=getchar())x=x*10+c-48; x=x*b;
}
LL sum[M][M];
struct state{int x,y,lx,ly;LL ans;state() {}state(int _x,int _y,int _lx,int _ly):x(_x),y(_y),lx(_lx),ly(_ly){ans=sum[_x-1+lx][_y-1+ly]+sum[_x-1][_y-1]-sum[_x-1+lx][_y-1]-sum[_x-1][_y-1+ly];}inline bool operator <(const state& P)const&{returnP.ans==ans?(P.x==x?(P.y==y?(P.lx==lx?P.ly<ly:P.lx<lx):P.y<y):P.x<x):  P.ans<ans;}
}Now;
#define N 2346007
state hep[N];
int len,n,m,xm,ym,K,ax;
map<state,bool> mp;
void write(LL x){if (x<10) {putchar('0'+x); return;} write(x/10); putchar('0'+x%10);}
inline void writeln(LL x){ if (x<0) putchar('-'),x*=-1; write(x); putchar('\n'); }
inline void writel(LL x){ if (x<0) putchar('-'),x*=-1; write(x); putchar(' '); }
void put(state P){hep[++len]=P,push_heap(hep+1,hep+1+len);}
inline state get() {pop_heap(hep+1,hep+1+len);return hep[len--];}
signed main () {read(n); read(m); read(xm); read(ym); read(K);for (int i=1;i<=n;i++)for (int j=1;j<=m;j++) read(ax),sum[i][j]=sum[i-1][j]+sum[i][j-1]-sum[i-1][j-1]+ax;for (int i=1;i<=n-xm+1;i++)for (int j=1;j<=m-ym+1;j++)  put(state(i,j,xm,ym));
//  for (int i=1;i<=len;i++) hep[i].we();while (K--) {while (Now=get(),1) {if (!mp[Now]) break;}mp[Now]=1;
//      writel(Now.x); writel(Now.y); writel(Now.lx); writel(Now.ly); writeln(Now.ans);if (Now.x+Now.lx<=n) put(state(Now.x,Now.y,Now.lx+1,Now.ly));if (Now.y+Now.ly<=m) put(state(Now.x,Now.y,Now.lx,Now.ly+1));}writeln(Now.ans+1); return 0;
}

转载于:https://www.cnblogs.com/rrsb/p/9255883.html

BZOJ 4716 假摔相关推荐

  1. 【BZOJ】4716 假摔

    Description [题目背景] 小Q最近喜欢上了一款游戏,名为<舰队connection>,在游戏中,小Q指挥强大的舰队南征北战,从而成为了一名dalao.在游戏关卡的攻略中,可能由 ...

  2. 【BZOJ4716】假摔 二分+暴力

    [BZOJ4716]假摔 Description [题目背景] 小Q最近喜欢上了一款游戏,名为<舰队connection>,在游戏中,小Q指挥强大的舰队南征北战,从而成为了一名dalao. ...

  3. bzoj4716假摔

    bzoj4716假摔 题意: 给出一个矩阵,求这个矩阵中权值和第k小的长在xmin到n之间,宽在ymin到m之间的子矩阵.n,m≤1000,k≤250000. 题解: 首先求出长为xmin,宽为ymi ...

  4. BZOJ4716 假摔

    标签:STL,贪心 题目 题目传送门 假摔(flopping.pas/c/cpp/in/out) [题目背景] 小Q最近喜欢上了一款游戏,名为<舰队connection>,在游戏中,小Q指 ...

  5. bzoj4716: 假摔

    BZOJ4716: 假摔 Time Limit: 20 Sec  Memory Limit: 512 MB Submit: 10  Solved: 7 [Submit][Status][Discuss ...

  6. 银行系统日终结算要多久_美股顽强翻红!两连跌终结,联储降息预期已超九成!制造业疲软消费者信心坚挺,三大股指又假摔?...

    美国股市昨日先抑后扬终结两连跌,开启反弹,道指.标普.纳指纷纷翻红. 10月3日晚,美东时间周四,美股集体低开,盘初受宏观经济数据不及预期影响,三大指数大幅跳水跌逾1%,道指跌超300点.此后美股开启 ...

  7. 练习假摔(视频, 超搞笑)

    [align=center][flash=420,380]http://v.9you.com/player/go1dk9nru[/flash][/align]

  8. 深富策略:假摔洗盘、不必紧张

    11月12日消息,三大指数集体高开,沪指早间窄幅震荡,创业板指小幅冲高后持续回落.板块方面,农业.军工股大幅拉升,电子烟.光伏.储能板块走强,电力设备.机场航运.半导体.汽车零部件等板块活跃:昨日大涨 ...

  9. 2019.10.8 多校赛Day1【including 流量,个人练习生,假摔

    初见安~由于题目不能外传所以请走传送门QuQ:https://www.cnblogs.com/YingLi/protected/p/11650044.html

最新文章

  1. python 直接if判断和is not None的区别
  2. Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法
  3. jvm的架构模型:基于栈式的架构和基于寄存器架构的特点
  4. C++虚继承(六) --- 虚继承浅析
  5. 云栖大会上,阿里巴巴重磅发布前端知识图谱!
  6. 手把手教你用Python的NumPy包处理数据
  7. krpano使用总结-地图路线
  8. 立冬了 广州还是夏天
  9. 改善深层神经网络:超参数调整、正则化以及优化 —— 3.1调试处理
  10. 受够了if (ModelState.IsValid)?ActionFitlter也是一路的坑啊!
  11. SQL数据库语言基础之SqlServer分组查询总结
  12. 面试题 10.01. 合并排序的数组
  13. iOS KVO实现方式
  14. 九齐单片机NY8B062D项目开发总结
  15. [并发并行]_[pthread]_[使用线程池并发复制文件]
  16. C++头文件、源文件的编译链接
  17. 怎样用计算机弹出声音,电脑没声音怎么调出来
  18. 目标检测学习笔记-3D摄像头与 2D摄像头区别
  19. 为什么叫区块链存储?兼谈IPFSFilecoin, Chia
  20. 延禧攻略插曲6首歌词+简谱

热门文章

  1. Django的搭建和小项目处理的过程(二)
  2. [陈鹏导师精益项目实战]华北区家电行业精益改善项目第五期启动
  3. 关于archlinux的使用
  4. HTML -JavaScript--模拟病毒
  5. 取代公司债电话交易员?高盛新算法可自动提供债券价格
  6. 好!好!好! 好文章!
  7. 计算机工商管理是学什么的,工商企业管理主要学什么
  8. 2011年3月份优秀PPT资源分享
  9. 基于深度学习的公交客流统计解决方案简介
  10. 那是你的计算机怎么用英语表示,“I potato you”可不是“我土豆你”,那这个potato到底啥意思?...