题目描述
Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开)。 【问题说明】这个问题是对几个相互竞争的招新宣讲会活动进行调度,它们都要求以独占的方式使用某一公共资源(小花花)。调度的目标是找出一个最大的相互兼容的活动集合。 活动选择问题就是要选择出一个由互相兼容的问题组成的最大子集合。 【温馨提示】应先将所有的活动按照结束时间升序排列,然后再选择可能的时间组合,并求出最大的组合数,使用qsort()排序函数是一个不错的选择。qsort 的函数原型是: void qsort(voidbase,size_t num,size_t width,int(__cdeclcompare)(const void,const void)); 功 能: 使用快速排序例程进行排序 头文件:stdlib.h 参数: 1 待排序数组首地址;2 数组中待排序元素数量;3 各元素的占用空间大小;4 指向函数的指针,用于确定排序的顺序

输入格式:
第一行为n,表示有n个招新宣讲会,接下来n行每行两个整数表示开始时间和结束时间,由从招新会第一天0点开始的小时数表示(24小时制)。 n <= 1000 。

输出格式:
最多参加的招聘会个数。

输入样例:
在这里给出一组输入。例如:

 3  9 10  10 20  8 15

输出样例:
在这里给出相应的输出。例如:

2

代码

#include<iostream>
#include<stdlib.h>
#include<algorithm>
using namespace std;typedef struct{int start;int end;
}per;
bool compare(per a,per b){return a.end<b.end;
}
int main(){int n;cin>>n;per a[n];for(int i=0;i<n;i++){cin>>a[i].start>>a[i].end;} /*int a[n][2];for(int i=0;i<n;i++){for(int j=0;j<2;j++){cin>>a[i][j];}}*/sort(a,a+n,compare);int sum=1;int finalend = a[0].end;for(int i = 1;i<n;i++){if(a[i].start>=finalend){sum++;finalend = a[i].end;}}cout<<sum;
}

心得体会:
做这个题还是挺曲折的,因为首先题目中给的提示,用到了快速排序函数void qsort(voidbase,size_t num,size_t width,int(__cdeclcompare)(const void,const void)),

功能

使用快速排序例程进行排序

头文件

stdlib.h

参数

1 待排序数组首地址;
2 数组中待排序元素数量;
3 各元素的占用空间大小;
4 指向函数的指针,用于确定排序的顺序

本来想根据题中的提示来做题的,可是做了好大一会儿发现我并不能很好的用这个函数将二维数组的第二列进行排序,在网上搜了好久,才发现要建一个结构体,这样就省去了二维数组。
这是昨天晚上写完的题,我的惰性又上来了,不行。

【C++】 Swan学院社团招新(PTA)相关推荐

  1. PTA Swan学院社团招新(sort排序)

    Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开). [问题说明]这个问题是对几个相互竞争的招新宣讲会 ...

  2. 7-4 Swan学院社团招新 (20 分)

    7-4 Swan学院社团招新 (20 分) Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开). [问 ...

  3. Swan学院社团招新

    Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开). [问题说明]这个问题是对几个相互竞争的招新宣讲会 ...

  4. 7-3 Swan学院社团招新

    7-3 Swan学院社团招新 Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开). [问题说明]这个问 ...

  5. 7-1 Swan学院社团招新 (20分)

    7-1 Swan学院社团招新 (20分) Swan学院社团招新,招新宣讲会分散在不同时间段,大一新生小花花想知道自己最多能完整的参加多少个招新宣讲会(参加一个招新宣讲会的时候不能中断或离开). [问题 ...

  6. C++ PTA Swan学院社团招新

    文章目录 一.题目 二.算法思想 三.代码 一.题目 二.算法思想 存储结构使用的是结构体数组,每一个结构体中存放着每一个宣讲会的开始时间及其结束时间. 根据题目的提示,我们可以使用双重循环,对这些宣 ...

  7. php面试自我介绍结束语,面试自我介绍 结尾 社团招新面试自我介绍

    自我介绍在我们的生活中会经常用到,在大学社团面试中,如何让自我介绍起到让人耳目一新的效果需要一定的技巧,下面是小编整理的社团招新面试自我介绍,欢迎大家阅读. 社团招新面试自我介绍篇1 亲爱的老师.同学 ...

  8. 计算机协会招新报名表,社团招新策划

    在丹桂飘香的新学期里,动漫社团迎来了一年一度的纳新活动.在纳新活动中,爱好动漫的新生们可以加入我们社团.以下是出国留学网小编为您整理的大学社团:动漫社团招新策划,供您参考,更多详细内容请点击实用资料查 ...

  9. 新乡学院计算机社团,【图片】新乡学院学生社团招新总贴_新乡学院吧_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 茶道协会: 茶道协会成立于2011年9月,本着丰富广大同学的业余生活的宗旨,带领大家寻根溯源,深入了解祖国历史悠久的茶文化,通过开展一系列的茶室活动,不断 ...

最新文章

  1. Python Qt GUI设计:QLineEdit和QTextEdit文本框类(基础篇—13)
  2. DrawText函数
  3. python该怎么自学-Python 应该怎么学?
  4. 通过案例学调优之--Oracle Cluster Table
  5. 工作171:阅读账号里面的新增调用接口操作
  6. python 3.6.5编译安装_Linux系统安装Python3.6.5
  7. 三位数倒序数C语言,C语言求助!一个三位数的逆序数,总是编不对
  8. abctod_123456
  9. 【2016年第5期】位置大数据在车辆保险风险管理中的应用
  10. 支持中文编程、汉语编程的国产C语言编程工具 - 习语言4717版发布
  11. u盘装服务器系统还原c盘失败,usb启动盘安装系统还原失败怎么办?
  12. Linux(1)- 服务器核心知识、Linux入门、VMware与centeos安装、远程连接linux、linux基本命令使用...
  13. 软件工程第一次作业 192402 20194653 徐伟刚
  14. 数据库公共字段自动填充
  15. 关于windows的共享文件夹的添加与删除(内网传输必备技能)[win10与win7设置区别]
  16. CSharp学习笔记
  17. 大规模LEO星座波束管理调研报告
  18. vs2012 MFC连接及操作access(2007)数据库(ADO)
  19. restful规范对应的controller层注解,testng测试
  20. 程序员必备的5大有趣编程网站,学编程就像玩游戏一样!

热门文章

  1. Android_001_校园APP_001_底部导航栏_Fragment_0
  2. Unity创建 .asset配置文件的方式
  3. php 中文加密如何解密,求教PHP中文加密解密代码
  4. 应用检查后台启动权限方法(小米官方给出的)
  5. php mysql条数不对_为什么PHP从MySQL中取出的数据总是少了一条?
  6. Labview上位机与单片机系统的开发
  7. 【木马生成工具】Msfvenom介绍及利用
  8. hp服务器下的虚拟机安装系统安装,hp 服务器安装linux系统安装
  9. idea登录gitee插件报错Unauthorized -null
  10. 徐松亮常用开发软件与网站