hdu 2615 Division(暴力)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2615
题解:挺简单的暴力枚举,小小的分治主要是看没人写题解就稍微写一下
#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long ll;
ll a[] , ans , sum[];
struct TnT {
ll one , another;
}Max[];
bool cmp(TnT x , TnT y) {
if(x.another == y.another) return x.one < y.one;
return x.another > y.another;
}
int main() {
int n;
while(~scanf("%d" , &n)) {
sum[] = ;
for(int i = ; i <= n ; i++) {
scanf("%lld" , &a[i]);
sum[i] = sum[i - ] + a[i];
}
ans = ;
ll num[];
for(int i = ; i < n ; i++) {
int l1 = , r1 = i;
if(i == ) {
int cnt = ;
for(int j = i + ; j < n ; j++) {
num[] = a[l1] , num[] = sum[j] - sum[l1] , num[] = sum[n] - sum[j];
sort(num , num + );
Max[cnt].one = num[] , Max[cnt++].another = num[];
}
if(cnt) {
sort(Max , Max + cnt , cmp);
ans = max(ans , Max[].one);
}
}
else if(i > && i < n - ) {
int cnt = ;
for(int j = ; j < i ; j++) {
num[] = sum[j] , num[] = sum[r1] - sum[j] , num[] = sum[n] - sum[r1];
sort(num , num + );
Max[cnt].one = num[] , Max[cnt++].another = num[];
}
for(int j = i + ; j < n ; j++) {
num[] = sum[r1] , num[] = sum[j] - sum[r1] , num[] = sum[n] - sum[j];
sort(num , num + );
Max[cnt].one = num[] , Max[cnt++].another = num[];
}
if(cnt) {
sort(Max , Max + cnt , cmp);
ans = max(ans , Max[].one);
}
}
else {
int cnt = ;
for(int j = ; j < i ; j++) {
num[] = a[n] , num[] = sum[j] , num[] = sum[r1] - sum[j];
sort(num , num + );
Max[cnt].one = num[] , Max[cnt++].another = num[];
}
if(cnt) {
sort(Max , Max + cnt , cmp);
ans = max(ans , Max[].one);
}
}
}
printf("%lld\n" , ans);
//printf("%I64d\n" , ans);
}
return ;
}
hdu 2615 Division(暴力)的更多相关文章
- hdu 3480 Division(斜率优化DP)
题目链接:hdu 3480 Division 题意: 给你一个有n个数的集合S,现在让你选出m个子集合,使这m个子集合并起来为S,并且每个集合的(max-min)2 之和要最小. 题解: 运用贪心的思 ...
- UVA.725 Division (暴力)
UVA.725 Division (暴力) 题意分析 找出abcdefghij分别是0-9(不得有重复),使得式子abcde/fghij = n. 如果分别枚举每个数字,就会有10^10,肯定爆炸,由 ...
- HDU 6036 - Division Game | 2017 Multi-University Training Contest 1
/* HDU 6036 - Division Game [ 组合数学,NTT ] | 2017 Multi-University Training Contest 1 题意: k堆石子围成一个圈,数量 ...
- HDU 6036 Division Game
HDU 6036 Division Game 考虑每堆石头最多操作 $ \sum e $ 次,考虑设 $ f(x) $ 表示某一堆石头(最开始都是一样的)操作 $ x $ 次后变成了 $ 1 $ 的方 ...
- HDU 5510 Bazinga 暴力匹配加剪枝
Bazinga Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5510 ...
- HDU 5522 Numbers 暴力
Numbers Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5522 ...
- hdu 5077 NAND(暴力打表)
题目链接:hdu 5077 NAND 题目大意:Xiaoqiang要写一个编码程序,然后依据x1,x2,x3的值构造出8个字符.如今给定要求生成的8个字符.问 说Xiaoqiang最少要写多少行代码. ...
- hdu 5726 GCD 暴力倍增rmq
GCD/center> 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5726 Description Give you a sequence ...
- hdu 4291(矩阵+暴力求循环节)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4291 思路:首先保留求出循环节,然后就是矩阵求幂了. #include<iostream> ...
随机推荐
- vue中使用vue-amap(高德地图)
因为项目要求调用高德地图,就按照官方文档按部就班的捣鼓,这一路上出了不少问题. 前言: vue-cli,node环境什么的自己安装设置推荐一个博客:https://blog.csdn.net/wula ...
- 洛谷P2125 题解
吐槽: 只能说这道题很数学,本数学蒟蒻推了半天没推出来,只知道要用绝对值,幸亏教练提醒,才勉强想出正解(似乎不是这样的),真的是很无语. 以上皆为吐槽本题,可直接 跳过 分析: 既然题目是要使书架上的 ...
- 关于input[type='checkbox']全选的问题
今天在做一个全选功能的时候,发现了一个问题,就是如果我在选择全选之前,我就已经选择了一个input,然后我再去选择全选并且以后再取消全选的时候,这个我之前选择的input始终处于选择状态,但是他的ch ...
- 佳木斯集训Day2
D2好点了,最起码不像之前那么水 T1按照常规操作是个找规律,类似于括号匹配的题,但是又不是,推进栈里,然后看最长的左括号有多少个,然后直接cout就可以了 #include <bits/std ...
- 【Java例题】1.3给朋友的贺卡
3.对“Hello World”程序进行改造, 能够显示一张发给朋友的贺卡.格式如下: ****************************** 张三,你好! 祝你学习愉快! 你的好朋友:李四 2 ...
- springboot-jsp打jar问题
[**前情提要**]最近做了一个项目,项目是springboot+jsp结构的,但是在发布生产环境的时候又需要用maven打成jar包,但是一开始的默认配置都不成功.下面的文章就是具体的解决过程. - ...
- java并发编程(二十六)----ThreadLocal的使用
其实ThreadLocal很多接触过多线程的同学都可能会很陌生,他不像current包里面那些耳熟能详的api一样在我们面前经常出现,更多的他作为一个本地类出现在系统设计里面.我们可以说一下Sprin ...
- Maven安装配置及其插件m2e(Eclipse Indigo 和 MyEclipse8.5)的安装配置
Maven安装配置及其插件m2e(Eclipse Indigo 和 MyEclipse8.5)的安装配置 系统:Windows7 使用软件: Maven3.0.3 + Eclipse Indigo ...
- spring-boot-plus快速快发脚手架简介
Everyone can develop projects independently, quickly and efficiently! Introduction spring-boot-plus是 ...
- 盘一盘 NIO (三)—— Selector解析
Selector是个啥? Selector是Java NIO核心组件中的选择器,用于检查一个或多个Channel(通道)的状态是否处于可读.可写.实现一个单独的线程可以管理多个channel,从而管理 ...