loj2021 「HNOI2017」大佬
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <queue>
#include <map>
using namespace std;
typedef long long ll;
typedef pair<int,int> par;
int n, m, mc, maxDay, maxLife, a[105], b[105], dp[105][105], c[105], cnt;
map<par,bool> mp;
par q[5000005];
struct Node{
int x, y, z;
};
queue<Node> d;
void bfs(){
d.push((Node){1, 1, 0});//用一天能打出来1的成绩。如果不打,那等级就是0
while(!d.empty()){
Node x=d.front();
d.pop();
if(x.x<maxDay){
d.push((Node){x.x+1, x.y, x.z+1});
if(x.z>1 && (ll)x.y*x.z<=maxLife && !mp.count(make_pair(x.y*x.z, x.z))){
Node t=(Node){x.x+1, x.y*x.z, x.z};
q[++cnt] = make_pair(t.y, t.x);
mp[make_pair(t.y, t.z)] = true;
d.push(t);
}
}
}
}
int main(){
cin>>n>>m>>mc;
for(int i=1; i<=n; i++)
scanf("%d", &a[i]);
for(int i=1; i<=n; i++)
scanf("%d", &b[i]);
for(int i=1; i<=m; i++){
scanf("%d", &c[i]);
maxLife = max(maxLife, c[i]);
}
memset(dp, 0xcf, sizeof(dp));
dp[0][mc] = 0;
for(int i=1; i<=n; i++)
for(int j=0; j<=mc-a[i]; j++){
dp[i][j] = max(dp[i-1][j+a[i]]+1, dp[i][j]);
dp[i][min(j+b[i], mc)] = max(dp[i-1][j+a[i]], dp[i][min(j+b[i], mc)]);
}
for(int i=1; i<=n; i++)
for(int j=0; j<=mc; j++)
maxDay = max(maxDay, dp[i][j]);
bfs();
sort(q+1, q+1+cnt);
for(int i=1; i<=m; i++){
if(c[i]<=maxDay){
printf("1\n");
continue;
}
// cout<<"FaQ\n";
int j=1, maxn=-0x3f3f3f3f;
bool flag=false;
for(int k=cnt; k>=1; k--){
while(j<=cnt && q[k].first+q[j].first<=c[i]){
maxn = max(maxn, q[j].first-q[j].second);
j++;
}
if(maxn+maxDay+q[k].first-q[k].second>=c[i]){
flag = true;
break;
}
if(q[k].first<=c[i] && maxDay-q[k].second+q[k].first>=c[i]){
flag = true;
break;
}
}
if(flag) printf("1\n");
else printf("0\n");
}
return 0;
}
loj2021 「HNOI2017」大佬的更多相关文章
- loj #2021. 「AHOI / HNOI2017」大佬
#2021. 「AHOI / HNOI2017」大佬 题目描述 人们总是难免会碰到大佬.他们趾高气昂地谈论凡人不能理解的算法和数据结构,走到任何一个地方,大佬的气场就能让周围的人吓得瑟瑟发抖,不敢 ...
- AC日记——「HNOI2017」礼物 LiBreOJ 2020
#2020. 「HNOI2017」礼物 思路: A题进程: 一眼出式子->各种超时过不去->看题解明白还有fft这个东西->百度文库学习fft->学习dft->学习fft ...
- AC日记——「HNOI2017」单旋 LiBreOJ 2018
#2018. 「HNOI2017」单旋 思路: set+线段树: 代码: #include <bits/stdc++.h> using namespace std; #define max ...
- loj2020 「HNOI2017」礼物
所有的下标从 \(0\) 开始. 考虑枚举 \(C\) (第一个加上负的等于第二个加上其绝对值)和第二个手链的偏移量 \(p\).答案就是 \[\sum_{i=0}^{n-1}(x_i+C-y_{(i ...
- loj#2020 「AHOI / HNOI2017」礼物 ntt
loj#2020 「AHOI / HNOI2017」礼物 链接 bzoj没\(letex\),差评 loj luogu 思路 最小化\(\sum\limits_1^n(a_i-b_i)^2\) 设改变 ...
- 「AHOI / HNOI2017」单旋
「AHOI / HNOI2017」单旋 题目链接 H 国是一个热爱写代码的国家,那里的人们很小去学校学习写各种各样的数据结构.伸展树(splay)是一种数据结构,因为代码好写,功能多,效率高,掌握这种 ...
- 「AHOI / HNOI2017」影魔
「AHOI / HNOI2017」影魔 题目描述 解决这类比较复杂的区间贡献问题关键在于找到计算的对象. 比如这道题,我们计算的对象就是区间中间的最大值. 对于点\(i\),我们找到左边第一个比他大的 ...
- loj #2023. 「AHOI / HNOI2017」抛硬币
#2023. 「AHOI / HNOI2017」抛硬币 题目描述 小 A 和小 B 是一对好朋友,他们经常一起愉快的玩耍.最近小 B 沉迷于**师手游,天天刷本,根本无心搞学习.但是已经入坑了几个 ...
- [LOJ 2022]「AHOI / HNOI2017」队长快跑
[LOJ 2022]「AHOI / HNOI2017」队长快跑 链接 链接 题解 不难看出,除了影响到起点和终点的射线以外,射线的角度没有意义,因为如果一定要从该射线的射出一侧过去,必然会撞到射线 因 ...
随机推荐
- java引用数据类型(类)
1 引用数据类型分类 类的类型分两种 1)Java提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供开发者使用.(类的变量是属性) 2)开发者自己创建的类, ...
- oo总结
架构设计 第一次作业 需求分析 这次作业是针对类中的一些元素,如属性,操作,继承,实现等查询,所以这次的架构我们的第一感觉,按照正常的结构在类中存属性操作,继承的父类和实现的接口等. 具体功能 为了实 ...
- Map-HashMap-LinkedHashMap-Map.Entry-Collections-可变参数
一.Map 接口(java.util) 定义:public interface Map<K,V> 介绍: (1)Map是一个接口,含有两个泛型,创建子类对象的时候,需要传递两个泛型 ...
- 爬取豆瓣电影top250并存储到mysql数据库
import requests from lxml import etree import re import pymysql import time conn= pymysql.connect(ho ...
- SAP ERP和C4C Account和Contact的双向同步
Account和Contact是C4C里唯一支持可以和ERP进行双向同步的主数据类别. C4C里创建一个Account:Mouser Electronics 在C4C里保存Account,自动同步到E ...
- Core Data stack
https://developer.apple.com/library/content/documentation/DataManagement/Devpedia-CoreData/coreDataS ...
- VPS Linux SSH 客户端断开后保持进程继续运行配置方法——screen
前言 在Linux中,我们经常会做一些关于数据的操作(备份.传输.压缩等)或是要在后台持续的运行一些程序.由于,工作的数据量很大或者工作要持续很长的时间,我们就必须保证这个终端的启动,一旦终端关闭了, ...
- JS实现全排列
https://www.jb51.net/article/39291.htm JavaScript全排列的六种算法 具体实现 算法一:交换(递归) 复制代码代码如下: <html xmlns=& ...
- nginx之HTTP模块配置
listen 指令只能使用与server字段里 如果本地调用可以监听本地Unix套接字文件,性能更加,因为不用走内核网络协议栈 listen unix:/var/run/nginx.sock; ...
- 2018.4.19 远程服务器重装系统之后ssh无法登陆问题
当我们重装云服务器系统的时候输入ssh连接命令(ssh dc2-user@116.85.25.15)出现一下代码 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...