博客
关于我
CCFCSP 201709-1 打酱油
阅读量:748 次
发布时间:2019-03-22

本文共 587 字,大约阅读时间需要 1 分钟。

思路:对数组进行排序后,遍历检查相邻元素的最小差值,即可得到结果。

#include 
using namespace std;typedef long long ll;const int N = 1e6 + 5;const ll mod = 1e9 + 7;int main() { int n; cin >> n; vector
a; for(int i = 1; i <= n; ++i) { ll x; cin >> x; a.push_back(x); } sort(a.begin(), a.end()); ll mi = LLONG_MAX; for(int i = 1; i < a.size(); ++i) { if(a[i] - a[i-1] < mi) { mi = a[i] - a[i-1]; } } // ...}

代码逻辑解析:

  • 首先读取输入数据,储存在数组$a中。
  • 对数组进行排序。
  • 初始化minimal difference为一个极大值。
  • 遍历排序后的数组,逐个计算相邻元素之差。
  • 如果当前差值小于已知的最小值,则更新最小值。
  • 最终输出结果。
  • 转载地址:http://huhwk.baihongyu.com/

    你可能感兴趣的文章
    mysql截取身份证号前几位_EXCEL中怎样截取身份证号前六位数字
    查看>>
    mysql手工注入
    查看>>
    MySQL执行SQL文件出现【Unknown collation ‘utf8mb4_0900_ai_ci‘】的解决方案
    查看>>
    Mysql执行update by id的过程
    查看>>
    mysql执行计划
    查看>>
    MySQL执行计划 EXPLAIN参数
    查看>>
    MySQL执行计划【explain】,看这一篇就够啦!
    查看>>
    Mysql执行计划字段解释
    查看>>
    mysql执行计划怎么看
    查看>>
    MySQL执行计划解读
    查看>>
    mysql执行顺序与索引算法
    查看>>
    mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
    查看>>
    mysql批量update操作时出现锁表
    查看>>
    MYSQL批量UPDATE的两种方式
    查看>>
    mysql批量修改字段名(列名)
    查看>>
    MySQL批量插入数据遇到错误1213的解决方法
    查看>>
    mysql技能梳理
    查看>>
    MySQL报Got an error reading communication packets错
    查看>>
    Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
    查看>>
    MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
    查看>>