洛谷P2242 公路维修问题

To 洛谷.2242 公路维修问题

题目描述

由于长期没有得到维修,A国的高速公路上出现了N个坑。为了尽快填补好这N个坑,A国决定对M处地段采取交通管制。为了求解方便,假设A国的高速公路只有一条,而且是笔直的。现在给出N个坑的位置,请你计算,最少要对多远的路段实施交通管制?

输入输出格式

输入格式:

输入数据共两行,第一行为两个正整数N、M (2<=N<=15000,M<=N)。第二行给出了N个坑的坐标(坐标值均在长整范围内,按从小到大的顺序给出,且不会有两个点坐标相同)。

输出格式:

仅一行,为最小长度和。

输入输出样例

输入样例#1:

18 4
3 4 6 8 14 15 16 17 21 25 26 27 30 31 40 41 42 43

输出样例#1:

25

说明

[样例说明]

交通管制的地段分别为:3-8,14-21,25-31,40-43。

代码:

 1 #include<cstdio>
 2 #include<algorithm>
 3 using namespace std;
 4
 5 int n,m,num,last,Ans,Delta[15005];
 6
 7 int main()
 8 {
 9     scanf("%d%d",&n,&m);
10     for(int i=1;i<=n;i++)
11     {
12         scanf("%d",&num);
13         Delta[i]=num-last;
14         last=num;
15     }
16     //n个数 中间有n-1个间隔,可以用 m-1个0 填充最大的间隔,
17     //其余相加。由于每一段包括两端点(a-b+1),少计算了1,所以最后再加m
18     /*for(int i=1;i<=n;i++)
19       printf("%d:%d\n",i,Delta[i]);*/
20     sort(Delta+2,Delta+1+n);//除去第一个元素与0之间的距离
21     for(int i=2;i<=n-m+1;i++)//忽略Delta[1]
22       Ans+=Delta[i];
23     printf("%d",Ans+m);
24     return 0;
25 }
时间: 2025-01-12 19:27:17

洛谷P2242 公路维修问题的相关文章

洛谷 P2242 公路维修问题

P2242 公路维修问题 题目描述 由于长期没有得到维修,A国的高速公路上出现了N个坑.为了尽快填补好这N个坑,A国决定对M处地段采取交通管制.为了求解方便,假设A国的高速公路只有一条,而且是笔直的.现在给出N个坑的位置,请你计算,最少要对多远的路段实施交通管制? 输入输出格式 输入格式: 输入数据共两行,第一行为两个正整数N.M (2<=N<=15000,M<=N).第二行给出了N个坑的坐标(坐标值均在长整范围内,按从小到大的顺序给出,且不会有两个点坐标相同). 输出格式: 仅一行,为

洛谷P2242 公路维修问题(Road)

题目描述 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛棚里有牛,有些没有. 所有的牛棚有相同的宽度. 自门遗失以后,farmer John必须尽快在牛棚之前竖立起新的木板. 他的新木材供应商将会供应他任何他想要的长度,但是吝啬的供应商只能提供有限数目的木板. farmer John想将他购买的木板总长度减到最少. 给出:可能买到的木板最大的数目M(1<= M<

洛谷P1265 公路修建(Prim)

To 洛谷.1265 公路修建 题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一“行路难”的问题,政府决定修建公路.修建公路的任务由各城市共同完成. 修建工程分若干轮完成.在每一轮中,每个城市选择一个与它最近的城市,申请修建通往该城市的公路.政府负责审批这些申请以决定是否同意修建. 政府审批的规则如下: (1)如果两个或以上城市申请修建同一条公路,则让它们共同修建: (2)如果三个或以上的城市申请修建的公路成环.如下图,A申请修建公路AB,B申请修建公路BC,C申

洛谷 P2243 电路维修

P2243 电路维修 题目背景 Elf 是来自Gliese 星球的少女,由于偶然的原因漂流到了地球上.在她无依无靠的时候,善良的运输队员Mark 和James 收留了她.Elf 很感谢Mark和James,可是一直也没能给他们帮上什么忙. 题目描述 有一天 Mark 和James 的飞行车没有办法启动了,经过检查发现原来是电路板的故障.飞行车的电路板设计很奇葩,如下图所示: 输入输出格式 输入格式: 输入文件包含多组测试数据.第一行包含一个整数T 表示测试数据的数目. 对于每组测试数据,第一行包

洛谷P1265 公路修建

P1265 公路修建 177通过 600提交 题目提供者该用户不存在 标签图论 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 long long类型赋值-1为什么… p党80的进 为什么不过啊... 题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一“行路难”的问题,政府决定修建公路.修建公路的任务由各城市共同完成. 修建工程分若干轮完成.在每一轮中,每个城市选择一个与它最近的城市,申请修建通往该城市的公路.政府负责审批这些申请以决定是否同意修建. 政府审

洛谷P2243 电路维修

P2243 电路维修 题目背景 Elf 是来自Gliese 星球的少女,由于偶然的原因漂流到了地球上.在她无依无靠的时候,善良的运输队员Mark 和James 收留了她.Elf 很感谢Mark和James,可是一直也没能给他们帮上什么忙. 题目描述 有一天 Mark 和James 的飞行车没有办法启动了,经过检查发现原来是电路板的故障.飞行车的电路板设计很奇葩,如下图所示: 输入输出格式 输入格式: 输入文件包含多组测试数据.第一行包含一个整数T 表示测试数据的数目. 对于每组测试数据,第一行包

洛谷——P1265 公路修建

P1265 公路修建 题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一“行路难”的问题,政府决定修建公路.修建公路的任务由各城市共同完成. 修建工程分若干轮完成.在每一轮中,每个城市选择一个与它最近的城市,申请修建通往该城市的公路.政府负责审批这些申请以决定是否同意修建. 政府审批的规则如下: (1)如果两个或以上城市申请修建同一条公路,则让它们共同修建: (2)如果三个或以上的城市申请修建的公路成环.如下图,A申请修建公路AB,B申请修建公路BC,C申请修建公路

洛谷1265 公路修建

本题地址:http://www.luogu.org/problem/show?pid=1265 题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一“行路难”的问题,政府决定修建公路.修建公路的任务由各城市共同完成.     修建工程分若干轮完成.在每一轮中,每个城市选择一个与它最近的城市,申请修建通往该城市的公路.政府负责审批这些申请以决定是否同意修建.     政府审批的规则如下:     (1)如果两个或以上城市申请修建同一条公路,则让它们共同修建:     (

洛谷——修复公路

按照时间排序, 逐个unite. #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int maxn=1010; struct edge{int x,y,t;}a[100010]; int n,m,fa[maxn],cnt; void init(){ for(int i=1;i<=n;i++)fa[i]=i; } int find(int x){ i