Codeforces 887D Ratings and Reality Shows
参加talk show的时间肯定是在某个t[ i ]的后一秒, 枚举一下就好了。
- #include<bits/stdc++.h>
- #define LL long long
- #define fi first
- #define se second
- #define mk make_pair
- #define PLL pair<LL, LL>
- #define PLI pair<LL, int>
- #define PII pair<int, int>
- #define SZ(x) ((int)x.size())
- #define ull unsigned long long
- using namespace std;
- const int N = 3e5 + ;
- const int inf = 0x3f3f3f3f;
- const LL INF = 0x3f3f3f3f3f3f3f3f;
- const int mod = ;
- const double eps = 1e-;
- const double PI = acos(-);
- int Log[N];
- struct ST {
- LL dp[N][]; int ty;
- void build(int n, LL b[], int _ty) {
- ty = _ty;
- for(int i = -(Log[]=-); i < N; i++)
- Log[i] = Log[i - ] + ((i & (i - )) == );
- for(int i = ; i <= n; i++) dp[i][] = ty * b[i];
- for(int j = ; j <= Log[n]; j++)
- for(int i = ; i+(<<j)- <= n; i++)
- dp[i][j] = max(dp[i][j-], dp[i+(<<(j-))][j-]);
- }
- inline LL query(int x, int y) {
- int k = Log[y - x + ];
- return ty * max(dp[x][k], dp[y-(<<k)+][k]);
- }
- };
- int n, a, b, c, d, start, len;
- int t[N], q[N];
- LL sum[N];
- ST rmq;
- int main() {
- cin >> n >> a >> b >> c >> d >> start >> len;
- for(int i = ; i <= n; i++) {
- cin >> t[i] >> q[i];
- if(q[i]) sum[i] = sum[i - ] + c;
- else sum[i] = sum[i - ] - d;
- }
- t[] = -;
- rmq.build(n, sum, -);
- LL prefix = start;
- int ans = -;
- for(int i = ; i <= n; i++) {
- if(i) {
- if(q[i]) prefix += a;
- else prefix -= b;
- }
- if(prefix < ) break;
- int p = lower_bound(t + , t + + n, t[i] + + len) - t - ;
- if(p <= i) {
- ans = t[i] + ;
- break;
- } else {
- int L = i + , R = p;
- LL mn = rmq.query(L, R) - sum[i];
- if(prefix + mn >= ) {
- ans = t[i] + ;
- break;
- }
- }
- }
- printf("%d\n", ans);
- return ;
- }
- /*
- */
Codeforces 887D Ratings and Reality Shows的更多相关文章
- 444 D. Ratings and Reality Shows
一个模特有两种活动. ① 拍照片,挣钱 a. ②开演唱会,花费b 给定模特这两种工作的时间表. 模特可以选定一个时间举办一个座谈会,那么他拍照片的钱变c.开演唱会会花费d. 要求在模特座谈会之前和后l ...
- SAE J1850 VPW Implement
---恢复内容开始--- OBDII Interface Project When I can ever find enough time away from schoolwork, I try to ...
- 每日英语:Why 'The Voice' Is China's No. 1 TV Show
U.S. fans of the hit talent show 'The Voice' may take for granted that its judges sit with their bac ...
- Wide-range regulator delivers 12V, 3A output from 16 to 100V source
Synchronous buck regulators offer high efficiency and are popular in applications in which available ...
- codeforces C. New Year Ratings Change 解题报告
题目链接:http://codeforces.com/problemset/problem/379/C 题目意思:有n个users,每个user都有自己想升的rating.要解决的问题是给予每个人不同 ...
- Codeforces 1322D - Reality Show(DP)
Codeforces 题面传送门 & 洛谷题面传送门 首先这个消消乐的顺着消的过程看起来有点难受,DP 起来有点困难.考虑对其进行一个转化:将所有出场的人按照攻击力从小到大合并,然后每次将两个 ...
- Codeforces Round #523 (Div. 2) D. TV Shows 模拟(多重集 先把所有区间加入多重集合)+贪心+二分
题意:给出n个电视节目的起始和结束时间 并且租一台电视需要x +y*(b-a) [a,b]为时段 问完整看完电视节目的最小花费是多少 思路:贪心的思想 情况1 如果新租一台电视的花费<=在空 ...
- Codeforces Round #523 (Div. 2) D. TV Shows
传送门 https://www.cnblogs.com/violet-acmer/p/10005351.html 题意: 有n个节目,每个节目都有个开始时间和结束时间. 定义x,y分别为租电视需要的花 ...
- 【codeforces】【Round#523D】TV shows
题意:n个节目,每个节目的播放时间为[li,ri],你需要选择一些电视机全部播放这些节目,一台电视机不能同时播放多个节目,选择一个新的电视机代价为x , 如果某台电视机的使用时间为[Li,Ri]需要付 ...
随机推荐
- hue的历史查询记录querys乱码问题解决
hue的历史查询记录querys乱码问题解决: master1中配置文件/home/hadoop/.versions/hue-3.10.0/desktop/conf/hue.ini 可以看到连接的是m ...
- go import 使用方法记录
import "fmt" 最常用的一种形式 import "./test" 导入同一目录下test包中的内容 import f "fmt ...
- 无备份mysql删除表后恢复
mysql从5.6.17开始自动设置innodb_file_per_table为on,每个表设置单独表空间,数据不是集中存放在ibdata1里.下面测试下无备份后drop表后的恢复. 前奏生成数据字典 ...
- CF 313B
题意: 给你一个字符串, 然后m次区间查询,求出区间有多少组 str[i] == str[i+1] 就是一个水DP了 有则Dp[i] = Dp[i-1] 无则 Dp[i] = Dp[i-1]: (刚开 ...
- nginx+ssl 服务器 双向认证
项目后台服务器采用nginx+tomcat 负载均衡架构 不久 访问协议有http升级为https 对服务器认证采用沃通的ssl证书 nginx ssl证书安装 参照沃通官方文档 他们有技术支持沟通 ...
- 《精通Oracle SQL(第2版)》PDF
一:下载途径 二:图书图样 三:目录 第1章 SQL核心 1.1 SQL语言 1.2 数据库的接口 1.3 SQL*Plus回顾 1.3.1 连接到数据库 1.3.2 配置SQL*Plus环境 1.3 ...
- 《深入理解Oracle 12c数据库管理(第二版)》PDF
一:下载获取位置: 二:本书图样: 三:本书目录: 图书目录: 第1章 安装Oracle 1.1 了解OFA 1.1.1 Oracle清单目录 1.1.2 Oracle基础目录 1.1.3 Oracl ...
- python之通过thread来实现多进程
代码如下: import threading, time class Test1(threading.Thread): def __init__(self, name): super().__init ...
- Java的两个实验程序
日期:2018.10.07 星期五 博客期:015 Part1:----------------第一个是二柱子出30道小学数学题: 一.程序设计思想 本程序设计由三部分构成,第一部分因为循环30次的需 ...
- xpath 根据根节点找数据