3897: Power
题解:
首先很贪心的选择
有最大的我们一定会用最大的
然后可以将序列分割。。
就变成了一道模拟题了。。
每个状态记录(h,t,h-have,t-need)
注意一下细节就可以了
代码:
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define rint register ll
#define IL inline
#define rep(i,h,t) for (rint i=h;i<=t;i++)
#define dep(i,t,h) for (rint i=t;i>=h;i--)
#define me(x) memset(x,0,sizeof(x))
const ll N=6e5;
ll e,r,n;
ll bz[][N],bz2[][N],ans,a[N];
ll get_max(ll x,ll y)
{
ll k=log2(y-x+);
if (bz[k][x]>bz[k][y-(<<k)+]) return(bz2[k][x]);
else return(bz2[k][y-(<<k)+]);
}
void fz(ll x,ll y,ll pre,ll nxt)
{
if (x>y) return;
ll kk=get_max(x,y);
if ((y-kk+)*r>=nxt)
{
fz(kk+,y,r,nxt);
if ((pre+(kk-x)*r)>=e)
{
ans+=e*a[kk];
fz(x,kk-,pre,e);
}
else ans+=(pre+(kk-x)*r)*a[kk];
} else
{
if (pre+(kk-x)*r>=e) ans+=(e-(nxt-(y-kk+)*r))*a[kk],fz(x,kk-,pre,e);
else ans+=((y-x+)*r+pre-nxt)*a[kk];
}
}
int main()
{
freopen("1.in","r",stdin);
freopen("1.out","w",stdout);
ios::sync_with_stdio(false);
ll T;
cin>>T;
rep(tt,,T)
{
cin>>e>>r>>n; ans=;
me(bz); me(bz2);
rep(i,,n) cin>>bz[][i],bz2[][i]=i,a[i]=bz[][i];
for (ll i=;i<=;i++)
for (ll j=;j<=n;j++)
if (bz[i-][j]>bz[i-][j+(<<(i-))])
bz[i][j]=bz[i-][j],bz2[i][j]=bz2[i-][j];
else bz[i][j]=bz[i-][j+(<<(i-))],bz2[i][j]=bz2[i-][j+(<<(i-))];
fz(,n,e,);
cout<<ans<<endl;
}
return ;
}
3897: Power的更多相关文章
- BZOJ 3897: Power
3897: Power Time Limit: 30 Sec Memory Limit: 512 MBSubmit: 218 Solved: 83[Submit][Status][Discuss] ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- 一起学微软Power BI系列-使用技巧(5)自定义PowerBI时间日期表
1.日期函数表作用 经常使用Excel或者PowerBI,Power Pivot做报表,时间日期是一个重要的纬度,加上做一些钻取,时间日期函数表不可避免.所以今天就给大家分享一个自定义的做日期表的方法 ...
- 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题
千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...
- 一起学微软Power BI系列-使用技巧(3)Power BI安卓手机版安装与体验
Power BI有手机版,目前支持安卓,苹果和WP,不过没有WP手机,苹果在国内还不能用,要FQ和用就不测试了.安卓的我也也是费了九牛二虎之力才把app下载下来,把方法分享给大家. FQ太麻烦,所以建 ...
- Power BI官方视频(3) Power BI Desktop 8月份更新功能概述
Power BI Desktop 8月24日发布了更新版本.现将更新内容翻译整理如下,可以根据后面提供的链接下载最新版本使用. 1.主要功能更新 1.1 数据钻取支持在线版 以前的desktop中进行 ...
- 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库
说起Oracle数据库,以前没用过Oracle不知道,但是这1年用Oracle后,发现真的是想狂吐槽,特别是那个.NET驱动和链接字符串,特别奇葩.总归是和其他数据库不一样,标新立异,不知道为何.另外 ...
- 千呼万唤始出来,微软Power BI简体中文版官网终于上线了,中文文档也全了。。
前几个月时间,研究微软Power BI技术,由于没有任何文档和资料,只能在英文官网瞎折腾,同时也发布了英文文档的相关文章:系列文章,刚好上周把文章发布完,结果简体中文版上线了.哈哈,心里有苦啊,早知道 ...
- 微软新神器-Power BI横空出世,一个简单易用,还用得起的BI产品,你还在等什么???
在当前互联网,由于大数据研究热潮,以及数据挖掘,机器学习等技术的改进,各种数据可视化图表层出不穷,如何让大数据生动呈现,也成了一个具有挑战性的可能,随之也出现了大量的商业化软件.今天就给大家介绍一款逆 ...
随机推荐
- boost::bind 介绍
boost::bind 介绍 这篇文章介绍boost::bind()的用法, 文章的主要内容是参考boost的文档. 1. 目的 boost::bind 是std::bindlist 和 std: ...
- Docker的离线安装
由于公司需要离线部署Docker,这里将其步骤记录下来. 目标环境Centos7.2. 由于目标环境为公司内网,首先尝试在https://download.docker.com/linux/cento ...
- Django请求周期图
- 异步io模块
'''客户端''' import socket,select #####进行封装,将socket对象和要返回的url,和回调函数进行一下封装 class Httprequest(): def __in ...
- javaweb web.xml文件详解
web.xml文件详解 前言:一般的web工程中都会用到web.xml,web.xml主要用来配置,可以方便的开发web工程.web.xml主要用来配置Filter.Listener.Servlet等 ...
- C# 中使用 Excel
using System;using System.Collections.Generic;using System.Text;using System.Reflection;using System ...
- Gradle更小、更快构建APP的奇淫技巧
本文已获得原作者授权同意,翻译以及转载原文链接:Build your Android app Faster and Smaller than ever作者:Jirawatee译文链接:Gradle更小 ...
- Confluence 6 数据库结构图
结构图细节 下面的 SVG 图片(可缩放矢量图)包括了 Confluence 数据库中使用的所有表.单击下面的连接在你的浏览器中打开图片连接,你也可以随后将图片下载到本地.你可以使用浏览器的缩放快捷键 ...
- css样式之属性操作
一.文本属性 1.text-align:cnter 文本居中 2.line heigth 垂直居中 :行高,和高度对应 3.设置图片与文本的距离:vertical-align 4.text-decor ...
- this作用范围
1. this的指向 var name='window';var obj={ name:'obj', say:function(){ return function(){ return this.na ...