bzoj1723--前缀和(水题)
题目大意:
.jpg)
我们可以维护行、列、对角线的前缀和,每次用当前和减去最小和、总和减去最小和更新答案。
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
#define N 201
inline char Nc(){
static char buf[],*p1=buf,*p2=buf;
if(p1==p2){
p2=(p1=buf)+fread(buf,,,stdin);
if(p1==p2)return EOF;
}
return *p1++;
}
inline void Read(int& x){
char c=Nc(),b=;
for(;c<''||c>'';c=Nc())if(c=='-')b=-;
for(x=;c>=''&&c<='';x=(x<<)+(x<<)+c-,c=Nc());x*=b;
}
int i,j,k,n,x[N][N],y[N][N],a[N][N],b[N][N],Ans=-,Mix[N],Miy[N],Mia[N],Mib[N],Max[N],May[N],Maa[N],Mab[N];
int main()
{
Read(n);
for(i=;i<=n;i++)
for(j=;j<=n;j++){
Read(k);
x[i][j]=x[i][j-]+k;
y[j][i]=y[j][i-]+k;
a[(i-j+n)%n+][i]=a[(i-j+n)%n+][i-]+k;
b[(i+j)%n+][i]=b[(i+j)%n+][i-]+k;
}
for(i=;i<=n;i++)
for(j=;j<=n;j++){
if(x[i][j]-Mix[i]>Ans)Ans=x[i][j]-Mix[i];
if(y[i][j]-Miy[i]>Ans)Ans=y[i][j]-Miy[i];
if(a[i][j]-Mia[i]>Ans)Ans=a[i][j]-Mia[i];
if(b[i][j]-Mib[i]>Ans)Ans=b[i][j]-Mib[i];
if(x[i][n]-x[i][j-]+Max[i]>Ans)Ans=x[i][n]-x[i][j-]+Max[i];
if(y[i][n]-y[i][j-]+May[i]>Ans)Ans=y[i][n]-y[i][j-]+May[i];
if(a[i][n]-a[i][j-]+Maa[i]>Ans)Ans=a[i][n]-a[i][j-]+Maa[i];
if(b[i][n]-b[i][j-]+Mab[i]>Ans)Ans=b[i][n]-b[i][j-]+Mab[i];
if(x[i][j]<Mix[i])Mix[i]=x[i][j];
if(y[i][j]<Miy[i])Miy[i]=y[i][j];
if(a[i][j]<Mia[i])Mia[i]=a[i][j];
if(b[i][j]<Mib[i])Mib[i]=b[i][j];
if(x[i][j]>Max[i])Max[i]=x[i][j];
if(y[i][j]>May[i])May[i]=y[i][j];
if(a[i][j]>Maa[i])Maa[i]=a[i][j];
if(b[i][j]>Mab[i])Mab[i]=b[i][j];
}
printf("%d",Ans);
return ;
}
bzoj1723
bzoj1723--前缀和(水题)的更多相关文章
- HDU 5776 sum (BestCoder Round #85 A) 简单前缀判断+水题
分析:就是判断简单的前缀有没有相同,注意下自身是m的倍数,以及vis[0]=true; #include <cstdio> #include <cstdlib> #includ ...
- 蓝桥杯 第四届C/C++预赛真题(5) 前缀判断(水题)
题目标题:前缀判断 如下的代码判断 needle_start指向的串是否为haystack_start指向的串的前缀,如不是,则返回NULL. 比如:"abcd1234" 就包含了 ...
- SRM 584 第一次玩TopCoder。。。只水题一道。。。
第一次topcoder,以前老感觉没有资格去做tc,cf什么的,现在已经慢慢接触了. 感觉还可以,还是有让我们这些蒻菜安慰的水题. tc的确很好玩,用客户端比赛,还有各种规则,而且还是只编写一个类提交 ...
- BZOJ USACO 银组 水题集锦
最近刷银组刷得好欢快,好像都是水题,在这里吧他们都记录一下吧(都是水题大家一定是道道都虐的把= =)几道比较神奇的题到时再列出来单独讲一下吧= =(其实我会说是BZOJ蹦了无聊再来写的么 = =) [ ...
- CYJian的水题大赛
实在没忍住就去打比赛了然后一耗就是一天 最后Rank19还是挺好的(要不是乐多赛不然炸飞),这是唯一一套在Luogu上号称水题大赛的而实际上真的是水题大赛的比赛 好了我们开始看题 T1 八百标兵奔北坡 ...
- Atcoder 水题选做
为什么是水题选做呢?因为我只会水题啊 ( 为什么是$Atcoder$呢?因为暑假学长来讲课的时候讲了三件事:不要用洛谷,不要用dev-c++,不要用单步调试.$bzoj$太难了,$Topcoder$整 ...
- 每日一刷(2018多校水题+2016icpc水题)
11.9 线段树 http://acm.hdu.edu.cn/showproblem.php?pid=6315 求逆序对个数 http://acm.hdu.edu.cn/showproblem.php ...
- hdu 1251 (Trie水题)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others)Total Submi ...
- 【bzoj3524】【Poi2014】【Couriers】可持久化线段树(主席树)水题
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=62485671 向大(hei)佬(e)势力学(di ...
- [ZPG TEST 114] 阿狸的英文名【水题】
1. 阿狸的英文名 阿狸最近想起一个英文名,于是他在网上查了很多个名字.他发现一些名字可以由两个不同的名字各取一部分得来,例如John(约翰)的前缀 “John”和Robinson(鲁滨逊) ...
随机推荐
- js学习笔记:操作iframe
iframe可以说是比较老得话题了,而且网上也基本上在说少用iframe,其原因大致为:堵塞页面加载.安全问题.兼容性问题.搜索引擎抓取不到等等,不过相对于这些缺点,iframe的优点更牛,跨域请求. ...
- Spring中Bean的作用域、生命周期
Bean的作用域.生命周期 Bean的作用域 Spring 3中为Bean定义了5中作用域,分别为singleton(单例).protot ...
- ASP.NET Core 中文文档 第四章 MVC(4.5)测试控制器逻辑
原文: Testing Controller Logic 作者: Steve Smith 翻译: 姚阿勇(Dr.Yao) 校对: 高嵩(Jack) ASP.NET MVC 应用程序的控制器应当小巧并专 ...
- 漫谈TCP
不得不承认,tcp是一个非常复杂的协议.它包含了RFC793及之后的一些协议.能把tcp的所有方面面面具到地说清楚,本身就是个很复杂的事情.如果再讲得枯燥,那么就会更让人昏昏欲睡了.本文希望能尽量用稍 ...
- 初识的Spring Mvc-----原理
一.Spring Mvc简介 Spring Mvc(Spring Web Mvc) 属于表现层的框架. 二.Spring结构图 Spring Mvc是Spring框架里面web模块的一部分,是在Spr ...
- Unicode 和 UTF-8 有何区别?
Unicode符号范围 (一个字符两个字节) | UTF-8编码方式 (十六进制) | (二进制) —————————————————————– 这儿有四个字节从-----00 00 ...
- React Native Android gradle下载慢问题解决
很多人会遇到 初次运行 react-native run android的时候 gradle下载极慢,甚至会失败的问题 如下图 实际上这个问题好解决的 首先 把对应版本的gradle下载到本地任意一个 ...
- 初识git版本控制系统
当下git分布式版本控制系统越来越火,掌握git也是必须的一个技能.因此,对git做了如下学习. Git初级指南 1. 先安装git.(ps:在select cmponents处要勾选Git Bash ...
- Oozie分布式任务的工作流——Spark篇
Spark是现在应用最广泛的分布式计算框架,oozie支持在它的调度中执行spark.在我的日常工作中,一部分工作就是基于oozie维护好每天的spark离线任务,合理的设计工作流并分配适合的参数对于 ...
- SQLServer如何添加try catch
在.net中我们经常用到try catch.不过在sqlserver中我们也可以使用try catch捕捉错误,在这里把语法记录下来和大家分享一下, --构建存储过程CREATE PROCEDURE ...