正解:贪心

解题报告:

传送门!

先考虑如果只有一列怎么搞?那就肯定是尽量走到最远的地方

然后用点儿类似的思想,现在考虑有两列的情况QAQ

为了方便表述,这里给每个位置两个值,a表示离一号入口的距离,b表示离二号入口的距离

可以先把从一号入口进去的安排了,所以考虑按体力从小往大考虑,然后在能满足a的情况下尽量选b比较大的位置

然后再处理二号入口的,就按体力从大往小考虑一下就好

具体实现的话就先把所有坐标按a排序,然后满足的就加入堆,堆的内部按b排序就好

over

#include<bits/stdc++.h>
using namespace std;
#define il inline
#define gc getchar()
#define ri register int
#define rc register char
#define rb register bool
#define rp(i,x,y) for(ri i=x;i<=y;++i)
#define my(i,x,y) for(ri i=x;i>=y;--i) const int N=+;
int n,m,k,a[N],nw=,nod_cnt;
struct node{int x,y,disa,disb;}nod[N];
il bool operator < (node gd,node gs){return gd.disb<gs.disb;}
priority_queue<node>Q; il int read()
{
rc ch=gc;ri x=;rb y=;
while(ch!='-' && (ch>'' || ch<''))ch=gc;
if(ch=='-')ch=gc,y=;
while(ch>='' && ch<='')x=(x<<)+(x<<)+(ch^''),ch=gc;
return y?x:-x;
}
il bool cmp(node gd,node gs){return gd.disa<gs.disa;}
il bool cmq(ri gd,ri gs){return gd>gs;} int main()
{
// freopen("720a.in","r",stdin);freopen("720a.out","w",stdout);
n=read();m=read();rp(i,,n)rp(j,,m)nod[++nod_cnt]=(node){i,j,i+j,i+m+-j};sort(nod+,nod++nod_cnt,cmp);
k=read();rp(i,,k)a[i]=read();sort(a+,a++k);
rp(i,,k){while(a[i]>=nod[nw].disa && nw<=nod_cnt)Q.push(nod[nw++]);if(Q.empty())return printf("NO\n"),;Q.pop();}
while(nw<=nod_cnt)Q.push(nod[nw++]);
k=read();rp(i,,k)a[i]=read();sort(a+,a++k);
// printf("nmdwsm??? %d\n",Q.size());
// while(!Q.empty())printf("%d\n",Q.top().disb),Q.pop();
my(i,k,){if(a[i]<Q.top().disb)return printf("NO\n"),;Q.pop();}//printf("dis=%d\n",Q.top().disb);}
printf("YES\n");
return ;
}

然后这儿是代码QwQ!

CF720A Closing ceremony 贪心的更多相关文章

  1. 题解 [CF720A] Closing ceremony

    题面 解析 首先贪心地想一想, 一个人我们肯定让她坐得尽量远, 那到底坐到哪里呢? 考虑先让下面的人先坐, 那他们就要尽量把离上面入口远的位置坐掉, 因此把位置按离上面的距离从大到小排序, 再一个个看 ...

  2. Codeforces 720A. Closing ceremony

    A. Closing ceremony time limit per test 2 seconds memory limit per test 256 megabytes The closing ce ...

  3. codeforces 720A:Closing ceremony

    Description The closing ceremony of Squanch Code Cup is held in the big hall with n × m seats, arran ...

  4. 退役前的最后的做题记录upd:2019.04.04

    考试考到自闭,每天被吊打. 还有几天可能就要AFO了呢... Luogu3602:Koishi Loves Segments 从左向右,每次删除右端点最大的即可. [HEOI2014]南园满地堆轻絮 ...

  5. Lunch War with the Donkey CSU - 2084

    Jingze is a big figure in California State University for his stubbornness. Because of his new failu ...

  6. 2018SDIBT_国庆个人第二场

    A.codeforces1038A You are given a string ss of length nn, which consists only of the first kk letter ...

  7. DP:0

    小故事: A * "1+1+1+1+1+1+1+1 =?" * A : "上面等式的值是多少" B : *计算* "8!" A *在上面等式 ...

  8. 贪心 Gym 100502E Opening Ceremony

    题目传送门 /* 题意:有一堆砖块,每一次操作可以选择消去任意一行,也可以选择消去任意一列.求要消去所有的砖块需要最小的操作数 贪心:首先清楚的是消去最高列的最佳,消去第一行最佳,行列的顺序只对中间过 ...

  9. Opening Ceremony(贪心)

    Problem E: Opening Ceremony Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 137  Solved: 30[Submit][S ...

随机推荐

  1. Gradle依赖的统一管理,解决依赖冲突

    看见别人在用implementation rootProject.ext.dependencies["xxxx"]不知道是什么意思,上网查了一下,原来是为了解决或者说预防gradl ...

  2. java二叉树字典查询(qq 928900200)

    This assignment will help you practice and understand better the Binary Tree and Binary Search Tree ...

  3. mariadb 10.1.26 二进制包安装笔记

    报错链接:http://php.upupw.net/ank2discuss/40/6841-e.html mariadb 10.1.26 二进制版本 全名称: mariadb-10.1.26-linu ...

  4. snopy 数据库简介

    snoRNA ,small nucleolar RNA, 核仁小分子RNA, 是一类在细胞核内的small non-coding RNA, 长度在60-300nt, 其主要功能是调控其他小RNA分子( ...

  5. [React] 03 - Intro: react.js in twelve demos

    Ref: React 入门实例教程 这算什么,react学习例子的十二门徒?哈哈 如何运行别人的react项目? Ref: [React全家桶入门之CODE]项目代码与使用方法 使用git克隆项目到本 ...

  6. php文件缓存方法总结

    为大家分享很全的php文件缓存,供大家参考,具体内容如下 <?php class cache {  private static $_instance = null;    protected ...

  7. 【代码审计】YzmCMS_PHP_v3.6 CSRF漏洞分析

      0x00 环境准备 YzmCMS官网:http://www.yzmcms.com/ 程序源码下载:http://pan.baidu.com/s/1pKA4u99 测试网站首页: 0x01 代码分析 ...

  8. 【CF944G】Coins Exhibition DP+队列

    [CF944G]Coins Exhibition 题意:Jack去年参加了一个珍稀硬币的展览会.Jack记得一共有 $k$ 枚硬币,这些硬币排成一行,从左到右标号为 $1$ 到 $k$ ,每枚硬币是正 ...

  9. 关于pyinstall打包时的依赖问题

    前几天写了一个人脸表情分析的小程序,想用pyinstall打包成一个可以移植的小软件.因为之前用过pyinstall,所以这次使用同样的方法对我的程序进行打包: [pyinstaller -F --i ...

  10. ubuntu16.04下安装运行DSO

    1.下载源码 git clone https://github.com/JakobEngel/dso.git 2.安装依赖项 suitesparse and eigen3 (required). su ...