热门标签 | 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



推荐阅读
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • Splay Tree 区间操作优化
    本文详细介绍了使用Splay Tree进行区间操作的实现方法,包括插入、删除、修改、翻转和求和等操作。通过这些操作,可以高效地处理动态序列问题,并且代码实现具有一定的挑战性,有助于编程能力的提升。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • 本文深入探讨了 Java 中的 Serializable 接口,解释了其实现机制、用途及注意事项,帮助开发者更好地理解和使用序列化功能。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
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社区 版权所有