用链表实现,这或许不是最好的算法,但过网教的案例是没问题的

#include "stdio.h"
#include "stdlib.h"
typedef struct poster{int pos_left;int pos_right;int number;struct poster*next;
}poster;
int main()
{int group,num_data,count,num_l,num_r,ans,flag_pre,flag_now;poster *head,*make_data,*pre;poster *point,*node_free,*new;scanf("%d",&group);while (group--) {scanf("%d",&num_data);head=(poster*)malloc(sizeof(poster));head->number=0;head->next=NULL;pre=head;for (count=1; count<=num_data; count++) {scanf("%d %d",&num_l,&num_r);make_data=(poster*)malloc(sizeof(poster));pre->next=make_data;make_data->pos_left=num_l;make_data->pos_right=num_r;make_data->number=count;make_data->next=NULL;pre=make_data;for (point=head->next; point!=make_data&&point->next!=NULL; point=point->next) {if ((make_data->pos_left<=point->pos_left)&&(make_data->pos_right>=point->pos_right)) {for (new=head; new->next!=point; new=new->next) {;}node_free=new->next;new->next=node_free->next;free(node_free);}if (make_data->pos_right<point->pos_left||make_data->pos_left>point->pos_right) {continue;}if (make_data->pos_left<=point->pos_right&&make_data->pos_right>point->pos_right) {point->pos_right-=(point->pos_right+1-make_data->pos_left);}if ((make_data->pos_right>=point->pos_left&&make_data->pos_left<point->pos_left)) {point->pos_left+=(make_data->pos_right+1-point->pos_left);}if (make_data->pos_left>point->pos_left&&make_data->pos_right<point->pos_right) {new=(poster*)malloc(sizeof(poster));new->pos_left=make_data->pos_right+1;new->pos_right=point->pos_right;new->number=point->number;new->next=point->next;point->next=new;point->pos_right=make_data->pos_left-1;}}}for (ans=0,flag_pre=0,make_data=head; make_data->next!=NULL; make_data=make_data->next) {flag_now=make_data->next->number;if (flag_now!=flag_pre) {ans++;}flag_pre=flag_now;}printf("%d\n",ans);}return 0;
}

数据结构——竞选海报相关推荐

  1. c语言海报,竞选海报 c语言

    C/C++ code#include using namespace std; #define LEN 20000 #define NO_POSTER -2 //无海报 #define MIX_POS ...

  2. c语言海报,C语言 竞选海报

    C/C++ code#include using namespace std; #define LEN 20000 #define NO_POSTER -2 //无海报 #define MIX_POS ...

  3. 真正的小说 真正的生活 真正的蜕变 真正的品味

    记得以前曾经看过这篇文章,但是没有看完全.今天蓦然在杜的空间再次看到这 篇文章,决定再看一次,而且,很认真的看完了.感觉现在的自己跟以前又不一样了,很多的感触只是埋在心里,慢慢消融,慢慢体味,同时慢慢 ...

  4. 清华2020计算机系张晨,本科三篇顶会一作、超算竞赛冠军,2020清华本科特奖结果出炉...

    原标题:本科三篇顶会一作.超算竞赛冠军,2020清华本科特奖结果出炉 在今年的清华本科生特奖候选人中,来自电子系的刘泓 ICML.CVPR.NeurIPS 三篇顶会一作的成绩十分亮眼,此外,来自姚班的 ...

  5. 这年头,做 Python 不懂点数据结构与算法真不行!

    学Python仅仅只学Python语法和API是远远不够的,掌握算法和数据结构这种永远都不会过时的核心技能才是决定一个程序员职业发展的关键因素.算法和数据结构对专业程序员来说重要性不言而喻,同样一个问 ...

  6. 从这个11.11开始,终结数据结构与算法的噩梦

    双十一电商大战一触即发,各大平台都在进行降价促销活动,0点后又有不少人要买买买了,薅羊毛之余,别忘了极客时间双十一也有一波优惠活动,很多专栏都在限时降价. DD要给大家推荐的这个专栏也是其中之一--& ...

  7. 直播 | 达观数据高级技术专家杨慧宇:金融数据结构化实践

    「PW Live」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交 ...

  8. 数据结构思维 第十七章 排序

    第十七章 排序 原文:Chapter 17 Sorting 译者:飞龙 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 计算机科学领域过度痴迷于排序算法.根据 CS 学生在这个主题上花费的时 ...

  9. 1682. [HAOI2014]贴海报

    1682. [HAOI2014]贴海报 ★★☆   输入文件:ha14d.in   输出文件:ha14d.out   简单对比 时间限制:1 s   内存限制:256 MB [题目描述] Byteto ...

最新文章

  1. Quora Question Pairs 项目参考资料
  2. Material Master
  3. Cannot complete the install because one or more required items could not be found.
  4. android适配规则(一)
  5. Spring Cloud Config服务器
  6. 自用plsql破解方法
  7. 英语听力学习方法,转自一牛人的博客
  8. Kali linux 安装Ralink外置无线网卡
  9. 正则表达式基础、原理及优化
  10. delete hive_hive执行更新和删除操作
  11. YII2框架AJAX请求报500错误的处理方法
  12. 推荐一款稳定快速免费的前端开源项目 CDN 加速服务
  13. php现在编辑pdf,用PHP编辑PDF?
  14. Python--异常处理笔记
  15. [OHIF-Viewers]医疗数字阅片-医学影像-Cornerstone
  16. 简单网页版的注册登录案例(JSP+CSS+MySQL+Servlet+MVC设计思想,含源码!)
  17. 大数据开源的可视化分析工具,主要有哪些?
  18. P1926 小书童——刷题大军 题解
  19. 计算机无法识别平板电脑,平板电脑连接电脑没反应怎么办【图解】
  20. 两数相除,如果有余数则结果加一

热门文章

  1. 宜立方商城第二天心得
  2. border边框部分不显示
  3. 聚焦安稳易用,云和恩墨 MogDB 荣登“集中式数据库影响力指数”榜单
  4. JOI-2016/17 春季合宿 切题记
  5. Tomcat多实例Nginx负载均衡
  6. vite + ts + eslint全局变量配置
  7. 微信小程序云开发如何实现上传视频 以及 图片
  8. 吐槽微信公众号技术团队的故障处理效率
  9. 举些例子看看一个程序员的水平究竟可以差到什么程度?
  10. Lp_LIBRARY 相关问题解决