蓝桥集训之修理牛棚

蓝桥集训之修理牛棚

  • 核心思想:贪心

    • 先把所有牛棚合成一块木板
    • 然后将所有间隙大小求出 排序找到最大的n-1个
    • 总长度 - n-1个间隙 得到剩下n个木板总长度
cpp 复制代码
  #include <iostream>
  #include <cstring>
  #include <algorithm>
  
  using namespace std;
  const int N = 210;
  
  int a[N],space[N];
  int n,m,c;
  
  int main()
  {
      cin>>n>>m>>c;
      for(int i=0;i<c;i++) cin>>a[i];
      sort(a,a+c); 
      for(int i=1;i<c;i++) space[i] = a[i]-a[i-1]-1;  //求间隙长度
      int res = a[c-1] - a[0] + 1;  //总长度
      //从大到小排间隙
      sort(space+1,space+c,greater<int>());
      for(int i=1;i<n;i++) res -= space[i];
      cout<<res<<endl;
      return 0;
  }
相关推荐
Mr YiRan2 小时前
C++面向对象继承与操作符重载
开发语言·c++·算法
蚊子码农6 小时前
算法题解记录--239滑动窗口最大值
数据结构·算法
liliangcsdn6 小时前
A3C算法从目标函数到梯度策略的探索
算法
陈天伟教授6 小时前
人工智能应用- 材料微观:06.GAN 三维重构
人工智能·神经网络·算法·机器学习·重构·推荐算法
liliangcsdn7 小时前
A3C强化学习算法的探索和学习
算法
Figo_Cheung7 小时前
Figo《量子几何学:从希尔伯特空间到全息时空的统一理论体系》(二)
算法·机器学习·几何学·量子计算
额,不知道写啥。7 小时前
HAO的线段树(中(上))
数据结构·c++·算法
LYS_06188 小时前
C++学习(5)(函数 指针 引用)
java·c++·算法
紫陌涵光8 小时前
669. 修剪二叉搜索树
算法·leetcode