BAPC 2014 Preliminary
// 题目链接: https://nanti.jisuanke.com/t/28204
1 //动态规划,重复利用子问题的最优,来求解当前最优问题
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <vector>
#include <queue>
using namespace std;
typedef long long ll;
int t;
const int N=;
int s[N];
int dp[N];//在第i层下楼时从一楼到i楼共生气的最小值
const int inf=0x3f3f3f3f;
int main()
{
scanf("%d",&t);
while(t--)
{
int n;
scanf("%d",&n);
int sum=;
for(int i=;i<=n;i++)
{
scanf("%d",&s[i]);
sum+=s[i];
}
dp[]=;
int ski;
for(int i=;i<=n;i++)
{
sum-=s[i];//这一层下楼,那么此时前面的都会下,sum为高层人数。
ski=;
dp[i]=inf;
for(int j=i-;j>=;j--)
{
dp[i]=min(dp[i],dp[j]+ski+sum);//
ski+=(i-j)*s[j];//该在j层下,却在i 层才下楼
}
}
//因为dp[i]为i层下楼的。。,因此用不下楼来更新
printf("%d\n",dp[n]);
}
return ;
}
D. Lift Problems
//在喜欢的里面取mid个,在不喜欢的里面取s-mid个。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int T;
const int N=1e5+;
int t[N],p[N];
int main()
{
int i,j,l,r,mid,maxx,n,s,f,k;
scanf("%d",&T);
while(T--)
{
scanf("%d%d%d",&n,&s,&f);
for( i=;i<n;i++)
scanf("%d",&t[i]);
sort(t,t+f);//要分别排序
//因为分成喜欢与不喜欢
sort(t+f,t+n);
scanf("%d",&k);
for(i=;i<k;i++)
scanf("%d",&p[i]);
l=max(,s-(n-f));//下界
r=min(s,f);//上界
while(l<=r)//因为上界可能取到
{
mid=(l+r)>>;
maxx=t[n-(s-mid)-];//不喜欢的不取的最大值
for(i=;i<k-f-(s-mid);i++)//把P数组小的加到不喜欢的不取的小的部分
maxx=max(maxx,p[i]+t[k--(s-mid)-i]);
for(j=;j<mid&&t[f--j]+(k-mid+j<?:p[k-mid+j])>=maxx;j++);
//喜欢中所取的所有值都要大于不喜欢中不取的最大值
if(j==mid)//这个mid是可以的
l=mid+;
else
r=mid-;
}
printf("%d\n",l-); }
return ;
}
BAPC 2014 Preliminary的更多相关文章
- 计蒜客 28206.Runway Planning (BAPC 2014 Preliminary ACM-ICPC Asia Training League 暑假第一阶段第一场 F)
F. Runway Planning 传送门 题意简直就是有毒,中间bb一堆都是没用的,主要的意思就是度数大于180度的就先减去180度,然后除以10,四舍五入的值就是答案.如果最后结果是0就输出18 ...
- 计蒜客 28202. Failing Components-最短路(Dijkstra) (BAPC 2014 Preliminary ACM-ICPC Asia Training League 暑假第一阶段第一场 B)
B. Failing Components 传送门 题意就是单向图,从起点开始找最短路,然后统计一下个数就可以.方向是从b到a,权值为s. 直接最短路跑迪杰斯特拉,一开始用数组版的没过,换了一个队列版 ...
- 计蒜客 28201.Choosing Ice Cream-gcd (BAPC 2014 Preliminary ACM-ICPC Asia Training League 暑假第一阶段第一场 A)
开始水一波博客 题目链接: A. Choosing Ice Cream 传送门 题意就是n个冰淇淋,骰子有k个面,问你是否能在公平的概率下转几次骰子能确定买哪个冰淇淋. 举个例子,假设我只有一个冰淇淋 ...
- BAPC 2014 Preliminary(第一场)
D:Lift Problems On the ground floor (floor zero) of a large university building a number of students ...
- BAPC 2014:Button Bashing(暴力+bfs)
题意: 给出n,m,代表微波炉有n个按钮,要求达到总时间为m 然后给出n个数,代表n个按钮能增加的时间,问最少几步,能够使得按出的总时间大于等于要求的时间,并且相差最小 输出最小的步数与相差的最小值 ...
- ACM 第十七天
暑期热身赛 BAPC 2014 The 2014 Benelux Algorithm Programming Contest 题目网址:https://odzkskevi.qnssl.com/3655 ...
- 2014 Benelux Algorithm Programming Contest (BAPC 14)E
题目链接:https://vjudge.net/contest/187496#problem/E E Excellent Engineers You are working for an agency ...
- ICLR 2014 International Conference on Learning Representations深度学习论文papers
ICLR 2014 International Conference on Learning Representations Apr 14 - 16, 2014, Banff, Canada Work ...
- 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!
看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ...
随机推荐
- Spring-aop实现切面的四种方式 (2)
AOP实现方式一 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http ...
- php红包生成随机算法
一.适用场景 红包总金额X,分配成Y个红包,每个红包随机金额. 二.生成算法 /** * 红包生成算法 * @param $money 总金额 * @param $number 红包数量 * @par ...
- yii2.0用gii自动补全代码做的简单增删改查,以及图片上传和展示
首先已经用gii根据model层生成了控制器,模型,视图层. 表结构为如图所示:表名为zhoukao1,
- July 19th 2017 Week 29th Wednesday
Rather than envy others, it is better to speed up their own pace. 与其羡慕他人,不如加快自己的脚步. The envy of othe ...
- dia无法输入中文的解决
安装dia后无法输入中文,解决如下: 修改/usr/bin/dia #dia-normal --integrated "$@" dia-normal "$@"
- AngularJs学习笔记--Dependency Injection(DI,依赖注入)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/di 一.Dependency Injection(依赖注入) 依赖注入(DI)是一个软件设计模式,处理 ...
- 二十七、详述 IntelliJ IDEA 设置 Sublime 代码颜色的方法
相信很多同学在使用 Sublime 时,看到那些五颜六色的代码感觉爽的不行,而反过来,再来看 IntelliJ IDEA 默认的代码颜色就感觉有些不爽啦!实际上,我们是可以通过「导入设置」的方式,来设 ...
- PAT——1064. 朋友数(set用法)
如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”.例如123和51就是朋友数,因为1+2+3 = 5+1 = 6,而6就是它们的朋友证号.给定一些整数,要求 ...
- 【AngularJS学习笔记】开发时候的建议目录结构,基本开发步骤
项目目录结构划分 Debug Node.JS的生成目录 Node_modules Node.Js的依赖项 Src 项目源文件 ----|framework 项目框架 --------|app --- ...
- java从mysql读写数据乱码问题
mysql默认使用latin(ISO-8859-1),而java默认使用unicode编码.因此在JAVA中向MYSQL数据库插入数据时,或者读取数据时,都需要先转换一下编码方式. 1.首先查看数据库 ...