我们可以先假设只有一块木板从编号最小的牛棚一直铺到编号最大的牛棚,然后断开m-1处。自然要按相邻牛棚的编号差从大到小断开才能使我们断开的地方可以有效节省木板长度(因为中间省去的要更多)
另外,要将输入的数据排序,数据可能不是按编号从小到大给的

#include<algorithm>
#include<iostream>
#include<math.h>
#include<stdio.h>
#include<cstdio>
#include<cstring>
using namespace std;
typedef long long ll;
#define debug(x) cerr<<#x<<" = "<<x<<endl
#define debugs(x,y) cerr<<#x<<" = "<<x<<"   "<<#y<<" = "<<y<<endl
const ll N=5e5+7;
const ll base=137;
const ll mod=2147483647;
template<typename T>inline T read(T &x)
{x=0;ll f=1;char c;while(!isdigit(c=getchar()))if(c=='-')f=-1;while(isdigit(c)){x=(x<<1)+(x<<3)+(c^48);c=getchar();}return x*f;
}
bool cmp(ll a,ll b)
{return a>b;
}
ll n,m,s,c,a[N],b[N],ans;
int main()
{read(m),read(s),read(c);for(int i=1;i<=c;++i)read(a[i]);if(m>c){cout<<c<<endl;return 0;}sort(a+1,a+1+c);ans=a[c]-a[1]+1;for(int i=2;i<=c;++i)b[i]=a[i]-a[i-1]-1;sort(b+1,b+1+c,cmp);for(int i=1;i<m;++i)ans-=b[i];cout<<ans<<endl;return 0;
}

P1209 [USACO1.3]修理牛棚 Barn Repair(贪心+逆向思维)难度⭐⭐⭐相关推荐

  1. P1209 [USACO1.3]修理牛棚 Barn Repair 的详解

    P1209 [USACO1.3]修理牛棚 Barn Repair [题目网站] [USACO1.3]修理牛棚 Barn Repair - 洛谷 [题目考点] 间隔的计算 [题目思路] 先输入数据 再算 ...

  2. P1209 [USACO1.3]修理牛棚 Barn Repair(贪心)

    题目描述 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛棚里有牛 ...

  3. P1209 [USACO1.3]修理牛棚 Barn Repair

    在一个月黑风高的暴风雨夜,Farmer John 的牛棚的屋顶.门被吹飞了 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜.有些牛棚里有牛,有些没有. 所有的 ...

  4. 题解 洛谷P1209 【[USACO1.3]修理牛棚 Barn Repair】

    题面: 题目描述 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛 ...

  5. [USACO1.3]修理牛棚 Barn Repair

    https://www.luogu.org/problemnew/show/P1209 题解: 典型的贪心题目 我们可以先假设只有一块木板从编号最小的牛棚一直铺到编号最大的牛棚,然后断开m-1处.自然 ...

  6. USACO1.3]修理牛棚 Barn Repair

    题目大意: 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛棚里有 ...

  7. 洛谷P1209 [USACO1.3]修理牛棚 Barn Repair----解题报告

    题目描述 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜. 有些牛棚里有牛 ...

  8. K10837 修理牛棚 Barn Repair [USACO1.4]

    K10837 修理牛棚 Barn Repair [USACO1.4] 题目描述 在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶.门被吹飞了. 好在许多牛正在度假,所以牛棚没有住满 ...

  9. USACO修理牛棚 Barn Repair

    USACO修理牛棚 Barn Repair 题目描述 在一个月黑风高的暴风雨夜,Farmer John 的牛棚的屋顶.门被吹飞了 好在许多牛正在度假,所以牛棚没有住满. 牛棚一个紧挨着另一个被排成一行 ...

最新文章

  1. Unity笔记(正版全阶段)目录
  2. employee setup in Organization unit
  3. 关于bc中小数点length,scale,(())以及进制转换
  4. icinga-report+jasperserver+icinga-web安装步骤
  5. linux摄像头流媒体开源项目,Github上最受欢迎的10大开源免费的RTSP流媒体项目
  6. AUTOSAR标准与产业发展动态
  7. 配置Windows Server 2008群集
  8. 如何解决“本地编辑,更新时传入删除”消息
  9. vue中style下scope的使用和坑
  10. Eclipse中添加Android系统jar包
  11. andriod 自定义来电界面功能
  12. VS debug调试时提示“未找到源”
  13. 麒麟服务器开启多个终端,厉害:麒麟多开同步器
  14. Python多进程反而变慢
  15. 导弹发射各项参数计算涉及计算机应用,计算机应用基础10.doc
  16. 【.NET Core】 hangfire
  17. PySide2 使用
  18. java nodelist.item_XPath NodeList顺序(Java)
  19. DXC Technology将收购领先数字创新公司Luxoft
  20. 诱导性多潜能干细胞(iPS cells) 现状及前景展望

热门文章

  1. 干货|简单理解梯度下降及线性回归
  2. 【好资源】473页斯坦福数学基础:《应用线性代数》(附pdf和ppt下载)
  3. 最大子矩阵(降维处理)
  4. Commonjs规范
  5. 【总结整理】JS的继承
  6. let 与 expr Shell运算比较 let强强胜出
  7. [Head First设计模式]身边的设计模式——适配器模式
  8. String Reduction问题分析
  9. cc arm linux gcc,(80分请教):armcc 与 arm-elf-gcc的区别?
  10. python积分管理系统_python实现每天自动签到领积分的示例代码