题目大意:

输入k,n ;k为每位慢跑者最少应看到的广告牌数

接下来n行 描述第 i 位慢跑者的途径路段

输出需要设立的广告牌数 接下来每行为设立地点

Sample Input

5 10
1 10
20 27
0 -3
15 15
8 2
7 30
-1 -10
27 20
2 9
14 21

Sample Output

19
-5
-4
-3
-2
-1
0
4
5
6
7
8
15
18
19
20
21
25
26
27

题解:https://blog.csdn.net/shuangde800/article/details/7828537

#include<iostream>
#include<algorithm>
#include<stdio.h>
#include<stdlib.h>
#include<cstring>
using namespace std;
struct num
{
int a,b;
bool operator<(const num& p)const {
return b<p.b;
};
}jog[];
bool vis[];
int main()
{
int n,k;
while(~scanf("%d%d",&k,&n))
{
int st=,ed=,ans=;
for(int i=;i<n;i++)
{
int p,q; scanf("%d%d",&p,&q);
jog[i].a=min(p,q)+;
jog[i].b=max(p,q)+;
st=min(st,jog[i].a);
ed=max(ed,jog[i].b);
}
sort(jog,jog+n);
// for(int i=0;i<n;i++)
// printf("%d %d %d\n",jog[i].a-10000,jog[i].b-10000,jog[i].b-jog[i].a);
memset(vis,,sizeof(vis));
for(int i=;i<n;i++)
{
int len=jog[i].b-jog[i].a+;
if(len<=k)
{
for(int j=jog[i].a;j<=jog[i].b;j++)
if(!vis[j]) vis[j]=,ans++;
}
else
{
int cnt=;
for(int j=jog[i].a;j<=jog[i].b;j++)
if(vis[j]) cnt++;
if(cnt>=k) continue;
for(int j=jog[i].b;j>=jog[i].a;j--)
if(!vis[j])
{
vis[j]=; cnt++; ans++;
if(cnt>=k) break;
}
}
}
printf("%d\n",ans);
for(int i=st;i<=ed;i++)
if(vis[i]) printf("%d\n",i-);
printf("\n");
}
return ;
}

最新文章

  1. shiro权限管理框架与springmvc整合
  2. button与input[type=”button”]的区别
  3. 【jQuery EasyUI系列】 创建展开行明细编辑表单的CRUD应用
  4. PHP写入Txt
  5. python: 生成guid
  6. MySQL主从复制技术(纯干货)
  7. easy_painting
  8. 关于web测试收集
  9. RecyclerView详解
  10. hbase 问题整理
  11. 自定义控制台程序导出Dynamics 365实体信息到Excel中。
  12. java工具类 获取包下所有类
  13. 手动增加pe节并修改oep
  14. NodeJs针对Express框架配置Mysql进行数据库操作
  15. 3-安装hive
  16. CentOS下mysql数据库常用命令
  17. NodeJS开发环境配置
  18. 单元测试,模拟用户Get登陆,并携带登录后的token访问接口
  19. 从操作系统rm数据文件后,利用句柄与rman恢复的过程。(已验证)
  20. SQL Server Reporting Service 报错:报表服务器无法解密用于访问报表服务器数据库中的敏感数据或加密数据的对称密钥,必须还原备份密钥或删除所有加密的内容。

热门文章

  1. GitHub 万星推荐:黑客成长技术清单
  2. Django Shell 如何对数据库进行测试
  3. C++中调用OC代码
  4. ( 转)WPF面板布局介绍Grid、StackPanel、DockPanel、WrapPanel
  5. PAT_A1130#Infix Expression
  6. REST Client实际应用记录
  7. VScode Python no module的解决方法
  8. C# WinfForm 控件之dev报表 XtraReport (七)报表合并
  9. LCA的 Trajan 算法
  10. 浅析vue响应式原理