分类讨论(以下仅考虑行,列的情况):
1.4行的,求出每一行的和后找到4个最大值即可;
2.3行1列,枚举列,再将每一行最大值减去那一列的值后取3个最大值得和即可;
3.2行2列,发现行和列是等价的,因此可以通过旋转使得$m\le n$,又因为$nm\le 10^5$,所以$m\le \sqrt{10^5}$,枚举两列后用同样的做法求出最大值即可
最终复杂度$o(nm\codt \min(n,m))$,也就是根号的复杂度

 1 #include<bits/stdc++.h>
2 using namespace std;
3 #define N 100005
4 #define ll long long
5 int n,m;
6 ll ans,b[N],s1[N],s2[N];
7 vector<int>a[N];
8 bool cmp(ll x,ll y){
9 return x>y;
10 }
11 ll qu(ll *a,int n,int k){
12 if (n<k)return 0;
13 ll x;
14 for(int i=1;i<=k;i++)b[i]=0;
15 for(int i=1;i<=n;i++){
16 x=a[i];
17 for(int j=1;j<=k;j++)
18 if (x>b[j])swap(x,b[j]);
19 }
20 x=0;
21 for(int i=1;i<=k;i++)x+=b[i];
22 return x;
23 }
24 int main(){
25 scanf("%d%d",&n,&m);
26 for(int i=1;i<=n;i++){
27 a[i].push_back(0);
28 for(int j=1;j<=m;j++){
29 scanf("%lld",&ans);
30 a[i].push_back(ans);
31 s1[i]+=a[i][j];
32 s2[j]+=a[i][j];
33 }
34 }
35 ans=max(qu(s1,n,4),qu(s2,m,4));
36 for(int i=1;i<=n;i++){
37 for(int j=1;j<=m;j++)s2[j]-=a[i][j];
38 ans=max(ans,s1[i]+qu(s2,m,3));
39 for(int j=1;j<=m;j++)s2[j]+=a[i][j];
40 }
41 for(int j=1;j<=m;j++){
42 for(int i=1;i<=n;i++)s1[i]-=a[i][j];
43 ans=max(ans,s2[j]+qu(s1,n,3));
44 for(int i=1;i<=n;i++)s1[i]+=a[i][j];
45 }
46 if (n<=m)
47 for(int i=1;i<n;i++)
48 for(int j=i+1;j<=n;j++){
49 for(int k=1;k<=m;k++)s2[k]-=a[i][k]+a[j][k];
50 ans=max(ans,s1[i]+s1[j]+qu(s2,m,2));
51 for(int k=1;k<=m;k++)s2[k]+=a[i][k]+a[j][k];
52 }
53 else
54 for(int i=1;i<m;i++)
55 for(int j=i+1;j<=m;j++){
56 for(int k=1;k<=n;k++)s1[k]-=a[k][i]+a[k][j];
57 ans=max(ans,s2[i]+s2[j]+qu(s1,n,2));
58 for(int k=1;k<=n;k++)s1[k]+=a[k][i]+a[k][j];
59 }
60 printf("%lld",ans);
61 }

[cf1219G]Harvester的更多相关文章

  1. ★Kali信息收集~ 5.The Harvester:邮箱挖掘器

    官网:http://www.edge-security.com 安装:apt-get install theHarvester 运行:终端输入 theharvester (小写) 用法+参数:(返回邮 ...

  2. 逆天Kali带你游遍大江南北~安全之前人铺路!

    0.Linux基础学习(基本指令) http://www.cnblogs.com/dunitian/p/4822807.html 1.Kali安装到移动硬盘或者U盘中~Linux系列通用方法(包括An ...

  3. ★Kali信息收集★8.Nmap :端口扫描

    ★Kali信息收集~ 0.Httrack 网站复制机 http://www.cnblogs.com/dunitian/p/5061954.html ★Kali信息收集~ 1.Google Hackin ...

  4. 安装 log.io 实时监控 php_error 日志

    Log.io 实时监控 php_error.log 日志 开启 php_error 实时监控日志的第一步,要首先开启 php_error 的功能. vi php.ini 修改 PHP 配置文件,将 ; ...

  5. Kali信息收集系列:(都是我以前的笔记整理了一下,就没加水印,习惯就好)

    好几天没发微信公众号了,今天一起发下.(最近有点事情) 前些天老业界的一位朋友问我一些Safe新时代信息收集的问题 逆天虽然好多年不干老本行,但隔段时间都会关注一下 于是就花了点时间整理了一下,你们就 ...

  6. [爬虫资源]各大爬虫资源大汇总,做我们自己的awesome系列

      大数据的流行一定程序导致的爬虫的流行,有些企业和公司本身不生产数据,那就只能从网上爬取数据,笔者关注相关的内容有一定的时间,也写过很多关于爬虫的系列,现在收集好的框架希望能为对爬虫有兴趣的人,或者 ...

  7. kali linux 渗透测试视频教程 第五课 社会工程学工具集

    第五课 社会工程学工具集 文/玄魂 教程地址:http://edu.51cto.com/course/course_id-1887.html   目录 第五课社会工程学工具集 SET SET的社会工程 ...

  8. backtrack5渗透 笔记

    目录        1.信息收集        2.扫描工具        3.漏洞发现        4.社会工程学工具        5.运用层攻击msf        6.局域网攻击       ...

  9. NodeJS无所不能:细数10个令人惊讶的NodeJS开源项目

    在几年的时间里,NodeJS逐渐发展成一个成熟的开发平台,吸引了许多开发者.有许多大型高流量网站都采用NodeJS进行开发,像PayPal,此外,开发人员还可以使用它来开发一些快速移动Web框架. 除 ...

随机推荐

  1. Vue3学习(二)之集成Ant Design Vue

    一.集成Ant Design Vue npm install ant-design-vue@2.0.0-rc.3 --save 兼容性 Ant Design Vue 2.x 支持所有的现代浏览器. 如 ...

  2. 【转载】如何从零开始开发一款嵌入式产品(20年的嵌入式经验分享学习,来自STM32神舟系列开发板设计师的总结

    [好文章值得分享,摘自作者:jesse] 来源:www.armjishu.com作者:jesse转载请注明出处 我的另一篇文章:<STM32嵌入式入门必看之文章-----介绍非常详细!(学STM ...

  3. 【Java虚拟机2】Java类加载机制

    前言 JAVA代码经过编译从源码变为字节码,字节码可以被JVM解读,使得JVM屏蔽了语言级别的限制.才有了现在的kotlin.Scala.Clojure.Groovy等语言. 字节码文件中描述了类的各 ...

  4. 【UE4 C++】UGameplayStatics 源代码

    // Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" # ...

  5. UI自动化测试之Airtest

    官方文档: https://airtest.doc.io.netease.com/ 本文我们讲解下Airtest的使用,主要学习目标有以下几点: (1)认识Airtest (2)了解Airtest能做 ...

  6. WEB前端工程师如何做职业规划?

    对于一个WEB前端的职业规划,其实是有各种的答案,没有哪种答案是完全正确的,全凭自己的选择,只要是自己选定了,坚持去认真走,就好.在这里, 我只是 简要说一下自己对于这块儿内容的理解.有一个观点想要分 ...

  7. 2021.9.20考试总结[NOIP模拟57]

    (换个编辑器代码就SB地不自动折叠了.. T1 2A 考察快读的写法. $code:$ T1 #include<bits/stdc++.h> #define scanf SCANF=sca ...

  8. IDEA插件开发,我是如何把公司的发布系统搬到IDEA里的

    不得不说JetBrains公司直的非常的牛B,每一个程序员都能在JetBrains的官方网站找到一款属于自己的开发工具.这些开发工具在工作中给我们带来了巨大的便利.各种各样的基础插件,第三方插件,真是 ...

  9. 身份证归属地查询免费api接口

    描写叙述 :依据身份证编号 查询归属地信息. 调用地址: http://api.k780.com:88/? app=idcard.get&idcard=510103195309280011&a ...

  10. 数字设计中的时钟与约束(gate)

    转载:https://www.cnblogs.com/IClearner/p/6440488.html 最近做完了synopsys的DC workshop,涉及到时钟的建模/约束,这里就来聊聊数字中的 ...