https://www.luogu.org/problemnew/show/P1209

题解:

典型的贪心题目

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

另外,要将输入的数据排序,数据可能不是按编号从小到大给的

/*
*@Author:   STZG
*@Language: C++
*/
#include <bits/stdc++.h>
#include<iostream>
#include<algorithm>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<string>
#include<vector>
#include<bitset>
#include<queue>
#include<deque>
#include<stack>
#include<cmath>
#include<list>
#include<map>
#include<set>
//#define DEBUG
#define RI register int
using namespace std;
typedef long long ll;
//typedef __int128 lll;
const int N=100000+10;
const int M=100000+10;
const int MOD=1e9+7;
const double PI = acos(-1.0);
const double EXP = 1E-8;
const int INF = 0x3f3f3f3f;
int t,n,m,k,q;
int ans,cnt,flag,s,c,temp,sum;
int a[N];
int b[N];
char str;
struct node{};
int main()
{
#ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout);
#endif//ios::sync_with_stdio(false);//cin.tie(0);//cout.tie(0);//scanf("%d",&t);//while(t--){scanf("%d%d%d",&m,&s,&c);for(int i=1;i<=c;i++){scanf("%d",&a[i]);}if(m>=c){cout<<c<<endl;return 0;}sort(a+1,a+c+1);ans=a[c]-a[1]+1;for(int i=1;i<c;i++){b[i]=a[i+1]-a[i]-1;}sort(b+1,b+c,greater<int>());for(int i=1;i<m;i++){ans-=b[i];}cout<<ans<<endl;//}#ifdef DEBUGprintf("Time cost : %lf s\n",(double)clock()/CLOCKS_PER_SEC);
#endif//cout << "Hello world!" << endl;return 0;
}

[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(贪心+逆向思维)难度⭐⭐⭐

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

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

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

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

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

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

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

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

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

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

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

  8. USACO修理牛棚 Barn Repair

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

  9. 修理牛棚 Barn Repair

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

最新文章

  1. Django-Ajax
  2. 监督学习——随机梯度下降算法(sgd)和批梯度下降算法(bgd)
  3. java 实例变量初始化_java学习之实例变量初始化
  4. 程序员数学基础【三、取模运算(取余运算功能重叠部分)】(Python版本)
  5. JavaScript语言调试技巧
  6. ax200网卡支持Linux吗,Deepin 20和Win10双系统中AX200网卡不能用的请关闭快速启动
  7. 如何解决pd16虚拟机 mac 联网失败问题?pd16 m1芯片版网络初始化失败问题!
  8. Intellij IDEA 识别不了@Slf4j和log的问题
  9. 《Spring Cloud》学习(一) 服务治理!
  10. win10不自带扫雷,想玩扫雷怎么办?自己造一个扫雷
  11. theano java_Windows Theano GPU 版配置
  12. js监听只读文本框_javascript 监听文本框输入
  13. 考研专业类计算机是什么类别,计算机类考研科目种类都有哪些分别是什么
  14. cmake flags
  15. elementui el-dialog 离顶部的位置_人眼距离屏幕合适位置该怎么算?
  16. (002)循环语句,数组,方法,走进面向对象(封装)
  17. solr 查询出异常org.apache.solr.search.SyntaxError: Cannot parse
  18. django实现证件照换底色后端和小程序(第三周学习记录)
  19. 0724 静态购物网页
  20. 护理管理学选择题汇总(人卫第三版)

热门文章

  1. python pytorch自定义_PyTorch使用自定义模块创建数据模型
  2. python xlsx 图片_实例11:用Python给Excel所有工作表添加图片
  3. kubelet启动失败_《蹲坑学kubernetes》之10-1:kubelet原理详解
  4. 11相机不流畅_小米11最新售价确定,标准版价格亲民,网友:幸福来得真突然...
  5. 程序员如何日常解决错误问题
  6. linux 备份mbr,MBR的备份与恢复
  7. java show过时_Java中show() 方法被那个方法代替了? java编程 显示类中信
  8. 三十二、深入Python中的文件操作
  9. 四十一、完成scrapy爬取官方网站新房的数据
  10. 三十、开始前端Vue.js的学习之路