Uva10366
2024-10-19 01:19:30
模拟乱搞
要说算法的话...乱搞算法?
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
using namespace std; const int N=;
int l,r,x1[N],x2[N];
int L,R,idl,idr; void init()
{
R=L=;
for (int i=l;i<=r;i += )
{
if (i<)
{
scanf("%d", &x1[(-i)/]);
if (L <= x1[(-i)/]) {
L = x1[(-i)/]; idl = (-i)/;
}
} else {
scanf("%d", &x2[i/]);
if (R < x2[i/]) {
R = x2[i/]; idr = i/;
}
}
}
} int del(int a, int b) {
if (a <= b) return * a;
else return a + b;
} int solve() {
l = (-l) / ; r = r / ; if (R == L) {
int k = , t = ;
int tmp = x1[l];
for (int i = l; i > idl; i--) {
k += tmp; tmp = max(tmp, x1[i-]);
}
tmp = x2[r];
for (int i = r; i > idr; i--) {
t += tmp; tmp = max(tmp, x2[i-]);
} return (idl + idr + ) * R * + min(k, t) * * ;
} else {
int T = min(R, L);
int p = , q = , k = , t = ;
while (p < l && x1[p] < T) p++;
while (q < r && x2[q] < T) q++; if (R > L) {
int tmp = x2[q];
for (int i = q; x2[i] <= L; i++) {
k += tmp; tmp = max(tmp, x2[i+]);
}
tmp = x1[l];
for (int i = l; i > p; i--) {
t += tmp; tmp = max(tmp, x1[i-]);
} } else {
int tmp = x1[p];
for (int i = p; x1[i] <= R; i++) {
k += tmp; tmp = max(tmp, x1[i+]);
}
tmp = x2[r];
for (int i = r; i > q; i--) {
t += tmp; tmp = max(tmp, x2[i-]);
}
}
int ans = t > k ? t + k : * t;
return ans * + (p + q + ) * T * ;
}
} int main()
{
while (scanf("%d%d", &l, &r) == && l && r)
{
init();
printf("%d\n", solve());
}
return ;
}
最新文章
- Oracle---------sql 中取值两列中值最大的一列
- c语言一些知识点的记录
- SVN代码冲突解决方案小集合
- 奇葩问题:This file could not be checked in because the original version of the file on the server was moved or deleted. A new version of this file has been saved to the server, but your check-in comments were not saved
- 問題排查:建立選單時的錯誤 errcode:40016, errmsg:invalid button size hint: [RI68La0851vr18]
- xargs -n1 -t
- Android之ViewDragHelper
- shell 简介
- 评论一下现有几个开源IM框架(Msn/QQ/Fetion/Gtalk...)
- phpstorm IDE编辑器使用手记
- js LocalStorage
- Tomcat7调优及JVM性能优化for Linux环境
- eclipse myeclipse修改工作区间 an error has occurred. see error log for more details. java.lang.nullpointerexception 问题解决
- Python中星号的本质和使用方式
- 【sql注入教程】SQL注入是什么?我们如何去玩转它
- Codeforces | CF1029F 【Multicolored Markers】
- 安装arcgis10.5不能启动服务的解决方案
- Linux and Oracle常用目录详解
- iNotify.js通知JS 实现浏览器的 title 闪烁、滚动、声音提示、chrome、Firefox、Safari等系统通知。
- VMware12 克隆虚拟机并且重新分配ip、mac
热门文章
- xcrun: error: unable to find utility ";instruments";, not a developer tool or in PATH
- 使用CSDN CODE来存放OPENSTACK位于GITHUB上的源代码
- Amr and Chemistry
- c++的检测的确比C++更严格
- 九度OJ 1198:a+b (大数运算)
- centos samba 服务器的配置和使用
- Python锁
- Linux备份和回复mysql数据库
- python cookbook第三版学习笔记十五:property和描述
- 记一次bash脚本报错原因