JZOJ 5350. 【NOIP2017提高A组模拟9.7】陶陶摘苹果
题目
分析
很神奇的事情又发生了!!
很容易想到设 \(f_{i,j}\) 表示考虑前 \(i\) 个区间,已选 \(j\) 个区间且必选第 \(i\) 时能覆盖到的最多苹果数
转移 \(O(n)\) 很显然了
然后,就没了·····
什么?!!
实际上测试数据给的答案是不能不用凳子的!!!
于是悲剧了······
\(Code\)
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
const int N = 1e6 + 5 , M = 205;
int n , m , h , k , ans , fi , s[N] , f[M][M];
struct node{
int l , r;
}g[M];
bool cmp(node a , node b){return a.l < b.l ? 1 : (a.l == b.l ? a.r < b.r : 0);}
int main()
{
freopen("apple.in" , "r" , stdin);
freopen("apple.out" , "w" , stdout);
scanf("%d%d%d%d" , &n , &m , &h , &k);
int x , Mx = 0;
for(register int i = 1; i <= n; i++)
{
scanf("%d" , &x);
if (x == h) {fi++; continue;}
if (x < h) continue;
s[x - h]++;
}
for(register int i = 1; i <= m; i++)
scanf("%d%d" , &g[i].l , &g[i].r) , Mx = max(Mx , g[i].r);
sort(g + 1 , g + m + 1 , cmp);
memset(f , -0x3f3f , sizeof f);
for(register int i = 1; i <= Mx; i++) s[i] += s[i - 1];
for(register int i = 1; i <= m; i++)
{
f[i][0] = 0 , f[i][1] = s[g[i].r] - s[g[i].l - 1];
for(register int j = 2; j <= min(i , k); j++)
for(register int l = 1; l < i; l++)
{
if (f[l][j - 1] < 0) continue;
int sum = s[g[i].r];
if (g[l].r >= g[i].l) sum -= s[g[l].r];
else sum -= s[g[i].l - 1];
f[i][j] = max(f[i][j] , f[l][j - 1] + sum);
}
}
for(register int i = k; i <= m; i++) ans = max(ans , f[i][k]);
printf("%d" , ans);
}
JZOJ 5350. 【NOIP2017提高A组模拟9.7】陶陶摘苹果的更多相关文章
- JZOJ 【NOIP2017提高A组模拟9.14】捕老鼠
JZOJ [NOIP2017提高A组模拟9.14]捕老鼠 题目 Description 为了加快社会主义现代化,建设新农村,农夫约(Farmer Jo)决定给农庄里的仓库灭灭鼠.于是,猫被农夫约派去捕 ...
- [JZOJ 100026] [NOIP2017提高A组模拟7.7] 图 解题报告 (倍增)
题目链接: http://172.16.0.132/senior/#main/show/100026 题目: 有一个$n$个点$n$条边的有向图,每条边为$<i,f(i),w(i)>$,意 ...
- JZOJ 2020.10.6 【NOIP2017提高A组模拟9.7】陶陶摘苹果
陶陶摘苹果 题目 Description Input Output Sample Input 10 5 110 3 100 200 150 140 129 134 167 198 200 111 0 ...
- 【NOIP2017提高A组模拟9.7】JZOJ 计数题
[NOIP2017提高A组模拟9.7]JZOJ 计数题 题目 Description Input Output Sample Input 5 2 2 3 4 5 Sample Output 8 6 D ...
- JZOJ 100029. 【NOIP2017提高A组模拟7.8】陪审团
100029. [NOIP2017提高A组模拟7.8]陪审团 Time Limits: 1000 ms Memory Limits: 131072 KB Detailed Limits Got ...
- JZOJ 5328. 【NOIP2017提高A组模拟8.22】世界线
5328. [NOIP2017提高A组模拟8.22]世界线 (File IO): input:worldline.in output:worldline.out Time Limits: 1500 m ...
- JZOJ 5329. 【NOIP2017提高A组模拟8.22】时间机器
5329. [NOIP2017提高A组模拟8.22]时间机器 (File IO): input:machine.in output:machine.out Time Limits: 2000 ms M ...
- JZOJ 5307. 【NOIP2017提高A组模拟8.18】偷窃 (Standard IO)
5307. [NOIP2017提高A组模拟8.18]偷窃 (Standard IO) Time Limits: 1000 ms Memory Limits: 262144 KB Description ...
- JZOJ 5286. 【NOIP2017提高A组模拟8.16】花花的森林 (Standard IO)
5286. [NOIP2017提高A组模拟8.16]花花的森林 (Standard IO) Time Limits: 1000 ms Memory Limits: 131072 KB Descript ...
- JZOJ 5305. 【NOIP2017提高A组模拟8.18】C (Standard IO)
5305. [NOIP2017提高A组模拟8.18]C (Standard IO) Time Limits: 1000 ms Memory Limits: 131072 KB Description ...
随机推荐
- python3小技巧总结(实时更新)
1.列表解析 如果一个想将一个列表中的大于0的数字过滤,一般可能会用到lambd结合filter,或者就是直接遍历,不过最好的解决办法是这样: b = [1,0,-1,-2] a = [i for i ...
- c++详细学习——引用
1 引用(reference) 引用是一个变量的别名,故引用在申明的时候必须给初始值,从此他们就建立了"不能离婚的婚姻关系",改变引用就会改变被引用的原变量 1 int main( ...
- springMVC环境的搭建(一)
概要: MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller). MV ...
- Blazor组件自做十二 : Blazor Pdf Reader PDF阅读器 组件 (新版 7.1 移除pdfobject)
Blazor Pdf Reader PDF阅读器 组件 示例: https://www.blazor.zone/PdfReaders https://blazor.app1.es/pdfReaders ...
- $_GET方法踩坑
背景 写代码时,遇到一个奇怪的问题:小程序卡券解码接口老是报解码失败,苦寻了一个小时,发现原来是url参数经过thinkphp的I方法被过滤掉,而且涉及到PHP原生的$_GET 原因 I方法底层是原生 ...
- Android applink 踩坑指南
Android applink 踩坑指南 原理 接入步骤 将链接与activity关联起来 加入meta data 生成身份验证JSON 真机测试 结论 官方文档 原理 与url scheme不同的地 ...
- iOS开发小结 - 通过PUT请求上传数据
一般服务器上传数据一般都是用POST请求,这样通过AFNetworking的POST请求稳稳的,但是有一天遇到一个问题,服务器上传数据用的是PUT请求,发现用AFNetworking并不是那么好用,今 ...
- Ansible 学习笔记 - 定位主机和组的模式
中英文对照表 英文 中文 备注 host 主机 group (主机)组 pattern 模式 ad hoc 特别命令 playbook 剧本 Ansible 专有名词,一段复杂的编排 inventor ...
- 真正“搞”懂HTTP协议09之这个饼干不能吃
我们在之前的文章中介绍HTTP特性的时候聊过,HTTP是无状态的,每次聊起HTTP特性的时候,我都会回忆一下从前辉煌的日子,也就是互联网变革的初期,那时候其实HTTP不需要有状态,就是个浏览页面,没有 ...
- GreenPlum批量授权(PG未测试)
创建一个自定义function create or replace function grant_all_exec(schema_name varchar,select_or_insert varch ...