Time Limit: 1 second

Memory Limit: 128 MB

【问题描述】

新年联欢会上,G.Sha负责组织智力问答节目。G.Sha建立了一个很大很大的超级题库,并衡量了每道题的难度wi。由于不可以让选手

一上场就被绝顶难题撂倒,所以难度必须循序渐进,从简到繁。

G.Sha制定了一套具体的抽题规则。首先,每位选手的第1道题一定是当前题库中最简单的。每位选手的下一道题,一定是题库中(1

)比刚刚答过的题严格地更难,(2)难度尽可能低的题。当然,每道题使用一遍就从题库中删掉。(可以参考样例数据)

G.Sha刚开完联欢会很累,所以他提供了抽题程序的日志,希望你能重现答题的过程。

简单起见,你只需要依次输出每位选手都答了哪些难度的题就可以了。

【数据规模】

40%的数据中,m≤50, n≤1000。

100%的数据中,m≤1000, n≤100000。

测试数据保证 ,即比赛中使用的题目,不仅比题库少,并且是远远的少。

测试数据保证每位选手都不会出现无题可选的情况。

【提示】

本题数据严格而全面,请注意优化算法,谨防超时。

【输入格式】

输入文件 quiz.in 包含3 行。

第 1 行,整数 n, m。代表题库最初的题目数 n,和选手数 m。

第 2 行,n个整数 wi,代表题目的难度,无序,0≤wi≤100000。

第 3 行,m个整数 ai,代表依次每位选手作答的题目数量。

【输出格式】

输出文件quiz.out包含n行。

第i行,每行ai个整数,代表选手i回答的每道题目的难度。

选手和每位选手的题目均按比赛时间的推移有序。

说明:游戏开始前的题库是{30, 1, 7, 3, 1, 14, 8, 20, 2, 1, 999, 2}。

选手1,依次作答了1,2,3,7四道题。作答后题库剩余{30,1,14,8,20,1,999,2}。

选手2,依次作答了1, 2两道题。作答后题库剩余{30, 14, 8, 20, 1, 999}。

选手3,依次作答了1, 8, 14三道题。作答后题库剩余{30, 20, 999}。

选手4,依次作答了20一道题,作答后题库剩余{30, 999}。

可以注意到,选手1~3都答了难度为1的题。这是因为难度1的题有3道,而对于每位选手来说难度都是递增的,一位选手不可能连续答

同样难度的题。

同理,选手1~2都答了难度为2的题。

Sample Input

12 4

30 1 7 3 1 14 8 20 2 1 999 2

4 2 3 1

Sample Output

1 2 3 7

1 2

1 8 14

20

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=t056

【题解】



把n个问题加入multiset题库->int类型里面就好;

每个选手按照要求用upper_bound找比上一次大的数字就好;

简直是模板题有木有。

输出有点坑;每行最后一个数字后面有空格;



【完整代码】

#include <cstdio>
#include <cmath>
#include <set>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define mp make_pair
#define pb push_back
#define fi first
#define se second
#define rei(x) scanf("%d",&x)
#define rel(x) scanf("%I64d",&x) typedef pair<int,int> pii;
typedef pair<LL,LL> pll; const int dx[9] = {0,1,-1,0,0,-1,-1,1,1};
const int dy[9] = {0,0,0,-1,1,-1,1,-1,1};
const double pi = acos(-1.0);
const int MAXM = 1000+100; multiset <int> tiku; int n,m;
int a[MAXM]; int main()
{
//freopen("F:\\rush.txt","r",stdin);
rei(n);rei(m);
rep1(i,1,n)
{
int x;
rei(x);
tiku.insert(x);
}
rep1(i,1,m)
rei(a[i]);
rep1(i,1,m)
{
int now = -1;
rep1(j,1,a[i])
{
__typeof(tiku.begin()) t = tiku.upper_bound(now);
now = (*t);
printf("%d ",now);
tiku.erase(t);
}
puts("");
}
return 0;
}

【t056】智力问答(multiset做法)的更多相关文章

  1. 【t056】智力问答(链表+计数排序做法)

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 新年联欢会上,G.Sha负责组织智力问答节目.G.Sha建立了一个很大很大的超级题库,并衡量了每道题的 ...

  2. 2014年7月份第2周51Aspx源码发布详情

      体育馆综合会员管理系统源码  2014-7-11 [VS2010]功能介绍:本系统适用于羽毛球馆,台球馆,乒乓球馆,棋牌室,篮球馆等综合体育馆,可同时使用.本系统功能非常强大,包含体育馆内餐厅,超 ...

  3. Splay入门题目 [HNOI2002]营业额统计

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1588 这道题貌似很多中做法,我先是用multiset交了一发,然后又写了一发splay. ...

  4. AI产品经理成长路

    AI产品经理成长路 https://www.jianshu.com/p/4b98314ad3c0 以下都是自己平时知识的一些总结,只是一些个人的愚见,下面出现的公司.书籍.视频.网站都是自己看过体验过 ...

  5. ITxlab倡议启动“互联网X大脑”计划

    导语:"互联网X大脑"计划由ITxlab(互联网X实验室)联合科学院相关机构.基于7年以来取得的研究成果,倡议建立的互联网与脑科学前沿研究平台,吸引不同领域专家进行科学研究和成果交 ...

  6. Daily Scrum 10

    今天我们小组开会内容分为以下部分: part 1: 经过反复思考,对于上次组会确定的在系统中加入娱乐版块进行了更进一步的商讨; part 2:继续探讨算法实现: part 3:进行明日的任务分配; ◆ ...

  7. noip2018——题解&总结

    近期正在疯狂复习某些东西,这篇博客尽量年底更完……(Day2T2除外) 好了,所有的希望都破灭了,原来这就是出题人的素质.——一个被欺骗的可怜 $OIer$ 人生中倒数第三次 $noip$ (Mayb ...

  8. C语言入门1-计算机工作原理

    一. 计算机与人工智能.计算机系统: 计算机工作原理:计算机的基本原理是存储程序和程序控制,预先要把指挥计算机如何进行操作的指令序列(称为程序)和原始数据通过输入设备输送到计算机内存贮器中.每一条指令 ...

  9. Linux常见疑难问答

    Linux常见疑难问答 (1)按a~z顺序排列启动服务进程. #exportLC_ALL=C           #英文环境变量设置,主要用于解决乱码问题 #chkconfig –list | gre ...

随机推荐

  1. MyEclipse2014,java文件无法编译,run as上是none applicable,不是文件本身的问题

    1.配置一下JDK目录 2.window -> Preferences -> java -> Installed JREs -> Add

  2. windows7蓝屏0x000000c4

    故障还原: 360更新弹出更新提示,于是选择了关机自动更新,第二天开机发现电脑蓝屏报0x000000c4错误! 故障排查: 1.无法从最后一次正确配置启动windows7 2.无法进入安全模式 该错误 ...

  3. iOS开发 分享到QQ空间提示"分享失败 应用不存在"

    本人遇到该问题的原因是配置SDK初始化时的APPID错误,可以参考下shareSDK的集成文档中的一段话: 可选:支持QQ所需的相关配置及代码 登录QQ互联(http://connect.qq.com ...

  4. SDUT-3346_数据结构实验之二叉树七:叶子问题

    数据结构实验之二叉树七:叶子问题 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 已知一个按先序输入的字符序列,如abd ...

  5. DDoS攻击新趋势:海量移动设备成为新一代肉鸡

    近期,阿里云安全团队观察到数十起大规模的应用层资源耗尽式DDoS攻击(应用层CC攻击).阿里云DDoS高防实现智能防护全程自动化检测并清洗,未对用户侧业务产生任何影响,这类攻击存在一些共同的特征,阿里 ...

  6. redhat6.5安装oracle11_2R

    参照前人一步一步操作: http://leihenzhimu.blog.51cto.com/3217508/1685164 遇到如下错误: This is a prerequisite conditi ...

  7. 2019-2-24-VisualStudio-过滤输出窗口文本

    title author date CreateTime categories VisualStudio 过滤输出窗口文本 lindexi 2019-2-24 11:10:7 +0800 2019-0 ...

  8. HTML打印print

    上代码: //打印 function printme() { global_Html = document.body.innerHTML; //document.body.innerHTML = do ...

  9. @noi.ac - 442@ 牛羊被他抢了

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 众所周知小G热衷于搏弈,有一天他来到你的大草原上,抢走了你所有的 ...

  10. [ Laravel 5.6 文档 ] 安全系列 —— 重置密码

    http://laravelacademy.org/post/8929.html 简介 想要快速实现该功能?只需要在新安装的 Laravel 应用下运行 php artisan make:auth(如 ...