热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

杭电多校第一场D题

闲来无事,看了下牛客多校的题目,嘴炮了几题,顺手用txt写了这题。先附上题面ProblemDescriptionChiakihasanar

闲来无事,看了下牛客多校的题目,嘴炮了几题,顺手用txt写了这题。先附上题面

Problem Description
Chiaki has an array of n positive integers. You are told some facts about the array: for every two elements ai and aj in the subarray al..r (li<jr), aiajholds.
Chiaki would like to find a lexicographically minimal array which meets the facts.

 

Input
There are multiple test cases. The first line of input contains an integer T, indicating the number of test cases. For each test case:

The first line contains two integers n and m (1n,m105) -- the length of the array and the number of facts. Each of the next m lines contains two integers li and ri (1lirin).

It is guaranteed that neither the sum of all n nor the sum of all m exceeds 106.

 

Output
For each test case, output n integers denoting the lexicographically minimal array. Integers should be separated by a single space, and no extra spaces are allowed at the end of lines.

 

Sample Input
3 2 1 1 2 4 2 1 2 3 4 5 2 1 3 2 4

 

Sample Output
1 2 1 2 1 2 1 2 3 1 1
解法大概就是将区间按左端点排序&#xff0c;然后用类似尺取的方法&#xff0c;加上小顶堆&#xff0c;一个个的将数填进去

1 #include
2 #include
3 #include
4 #include
5 using namespace std;
6 const int maxn &#61; 1e5&#43;7;
7 struct node{
8 int l,r;
9 }a[maxn];
10 int vis[maxn];
11 int ans[maxn];
12 priority_queue <int, vector<int>, greater<int> > q;
13
14 bool cmp(node a,node b){
15 return a.l < b.l;
16 }
17
18 int main(){
19 int T;
20 scanf("%d",&T);
21 while(T--){
22 memset(vis,0,sizeof(vis));
23 memset(ans,0,sizeof(ans));
24 while(!q.empty()) q.pop();
25 int n,m;
26 scanf("%d%d",&n,&m);
27 for(int i&#61;1;i<&#61;n;&#43;&#43;i) q.push(i);
28 for(int i&#61;0;ii){
29 scanf("%d%d",&a[i].l,&a[i].r);
30 }
31
32 sort(a,a&#43;m,cmp);
33 int l &#61; 0,r &#61; 0;
34 for(int i&#61;0;ii){
35 while(l < a[i].l){
36 if(ans[l] !&#61; 0)
37 q.push(ans[l]);
38 &#43;&#43; l;
39 }
40 while(r <&#61; a[i].r){
41 if(r >&#61; a[i].l){
42 ans[r] &#61; q.top();
43 q.pop();
44 }
45 &#43;&#43; r;
46 }
47 }
48 for(int i&#61;1;i<&#61;n;&#43;&#43;i){
49 if(ans[i] &#61;&#61; 0)
50 ans[i] &#61; 1;
51 }
52 for(int i&#61;1;i<&#61;n;&#43;&#43;i){
53 if(i !&#61; 1) printf(" ");
54 printf("%d",ans[i]);
55 }
56 puts("");
57 }
58 return 0;
59 }

 

转:https://www.cnblogs.com/yZiii/p/9361358.html



推荐阅读
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 本题旨在通过给定的评级信息,利用拓扑排序和并查集算法来确定全球 Tetris 高手排行榜。题目要求判断是否可以根据提供的信息生成一个明确的排名表,或者是否存在冲突或信息不足的情况。 ... [详细]
  • 丽江客栈选择问题
    本文介绍了一道经典的算法题,题目涉及在丽江河边的n家特色客栈中选择住宿方案。两位游客希望住在色调相同的两家客栈,并在晚上选择一家最低消费不超过p元的咖啡店小聚。我们将详细探讨如何计算满足条件的住宿方案总数。 ... [详细]
  • Splay Tree 区间操作优化
    本文详细介绍了使用Splay Tree进行区间操作的实现方法,包括插入、删除、修改、翻转和求和等操作。通过这些操作,可以高效地处理动态序列问题,并且代码实现具有一定的挑战性,有助于编程能力的提升。 ... [详细]
  • 题目Link题目学习link1题目学习link2题目学习link3%%%受益匪浅!-----&# ... [详细]
  • 本题通过将每个矩形视为一个节点,根据其相对位置构建拓扑图,并利用深度优先搜索(DFS)或状态压缩动态规划(DP)求解最小涂色次数。本文详细解析了该问题的建模思路与算法实现。 ... [详细]
  • 本文深入探讨了POJ2762问题,旨在通过强连通分量缩点和单向连通性的判断方法,解决有向图中任意两点之间的可达性问题。文章详细介绍了算法原理、实现步骤,并附带完整的代码示例。 ... [详细]
  • 本文介绍了如何在 C# 和 XNA 框架中实现一个自定义的 3x3 矩阵类(MMatrix33),旨在深入理解矩阵运算及其应用场景。该类参考了 AS3 Starling 和其他相关资源,以确保算法的准确性和高效性。 ... [详细]
  • 本文介绍如何使用Objective-C结合dispatch库进行并发编程,以提高素数计数任务的效率。通过对比纯C代码与引入并发机制后的代码,展示dispatch库的强大功能。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 本文详细介绍了C语言中链表的两种动态创建方法——头插法和尾插法,包括具体的实现代码和运行示例。通过这些内容,读者可以更好地理解和掌握链表的基本操作。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 本问题探讨了在特定条件下排列儿童队伍的方法数量。题目要求计算满足条件的队伍排列总数,并使用递推算法和大数处理技术来解决这一问题。 ... [详细]
author-avatar
qlb
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有