[编程题] 有趣的数字

时间限制:1秒
空间限制:32768K
小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,相差最小的有多少对呢?相差最大呢?

输入描述:

输入包含多组测试数据。

对于每组测试数据:

N - 本组测试数据有n个数

a1,a2…an - 需要计算的数据

保证:

1<=N<=100000,0<=ai<=INT_MAX.

输出描述:

对于每组数据,输出两个数,第一个数表示差最小的对数,第二个数表示差最大的对数。

输入例子1:

6
45 12 45 32 5 6

输出例子1:

1 2

#include<iostream>
#include<vector>
#include<algorithm>using namespace std;int main(){int n;while(cin >> n){vector<int> nums(n);for(int i = 0; i < n; i++)cin>> nums[i];int minNum = 0,  maxNum = 0;//排序sort(nums.begin(), nums.end());//最大int l = 0, r = n - 1;int i = 1, j = 1;//i为最小数的个数,j为最大数的个数while(nums[l] == nums[l + 1]) { i++; l++;}while(nums[r] == nums[r - 1]) { j++; r--;}maxNum = i * j;//最小int minTemp = nums[1] - nums[0];//最小差值int count = 1;for(int i = 2; i < n; i++){if(nums[i] - nums[i - 1] < minTemp){minTemp = nums[i] - nums[i - 1];count= 1;}else if(nums[i] - nums[i - 1] == minTemp) count++;}if(minTemp > 0) minNum = count;else { for(int i = 1; i < n; i++){int j = i - 1;while(nums[i] == nums[j] && j >= 0){j--; minNum++;}}}cout << minNum <<' ' << maxNum << endl;}return 0;}

求最大,即为数组中最小值个数*最大值个数;
求最小,要判断最小差值是否为0,如果为0,则存在多个匹配问题,否则,单次循环可以解决。

参考:腾讯笔试编程题:两两二元组差最小最大对数(C++) - Benson的学习笔记 - CSDN博客 https://blog.csdn.net/xubinlxb/article/details/52435409

有趣的数字(C++)相关推荐

  1. DAY12 计蒜客 有趣的数字 爬楼梯 七巧板

    结果填空 有趣的数字 我们称一个数是质数,而且数位中出现了 5 的数字是有趣的.例如 5, 59, 457 都是有趣的,而 15, 7 不是.求 1 到 100000中有趣的数的个数. 蓝桥杯模拟赛, ...

  2. 【编程题】有趣的数字

    原题出处:牛客网-腾讯2017暑期实习生编程题 [编程题] 有趣的数字 时间限制:1秒 空间限制:32768K 小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,差最小的有多少对呢?差最大呢 ...

  3. 宇宙:一些有趣的数字

    宇宙:一些有趣的数字 从天体距离到质子.电子     让我们先阐述几个概念: 1.我们计量距离.时间和质量的单位分别为米和光年.秒和年以及克和千克,而外星人不 可能理解这些单位,但宇宙间所有的物质,包 ...

  4. countupjs,一个有趣的数字翻滚动画

    CountUp.js 是一个零依赖的轻量级 JavaScript 库,可用于快速创建以更有趣的方式显示数字的动画. 用法 参数: target = html元素的id,input,svg text元素 ...

  5. 有趣的数字环的算法实现

    看到这么个数字环,感觉很有趣,于是就想着用算法实现此数字环. 首先附图看效果,看是什么样的数字环 其实这个东西的算法实现是很简单的,写下它,是因为它代表了一种在算法中常用的一种思想,把一些看似很复杂很 ...

  6. 2020蓝桥杯C-B组模拟赛—有趣的数字

    我们称一个数是质数,而且数位中出现了 5 的数字是有趣的.例如 5, 59, 457都是有趣的,而 15, 7不是.求 1 到 100000 中有趣的数的个数. #include<stdio.h ...

  7. CCF系列题解--2013年12月第四题 有趣的数字

    问题描述 我们把一个数称为有趣的,当且仅当:        1. 它的数字只包含0, 1, 2, 3,且这四个数字都出现过至少一次.        2. 所有的0都出现在所有的1之前,而所有的2都出现 ...

  8. 数学回味系列之19 - 有趣的数字

    发现一些比较有意思的数,大家一起来认识一下: 分别是 阿姆斯特朗数.完全数.自守数.回文数 . 阿姆斯特朗数: 如果一个正整数等于其各个数字的立方和,则称为 阿姆斯特朗数 (也称自恋性数). 比如 1 ...

  9. 一道有趣的数字填空题

    一道数字填空题 将1-8填入以上空格中,找出所有满足条件的组合. 分析: 数值范围:1234-8765.利用枚举法,根据题意,乘数是5,最后一位数必定是5,所以可知,8765/5=1753.即乘子最大 ...

  10. 一个有趣的数字变化算法

    package com.bootdo.test.controller;public class SevenNumber {/** 由7位数中的(单位数与尾数)(双位数与尾数)发生的变化 1. 尾数的变 ...

最新文章

  1. 2021-01-22 Python TimedRotatingFileHandler 修改suffix后无法自动删除文件
  2. kafka学习_《从0到1学习Flink》—— Flink 读取 Kafka 数据写入到 RabbitMQ
  3. Xcodebuild自动打包
  4. 考研还是直接工作?嵌入式or前端
  5. mysql怎么拆字符串_MySQL截取和拆分字符串函数用法示例
  6. 动手才能进步(冒泡法示例)
  7. 深入分析MFC之GDI原理透析
  8. 3ds Max小白入门小案例|旋转楼梯
  9. 对未来技术方向的思考
  10. Swing实现动画效果(实现Loding动画)【转载】
  11. JS——判断变量类型方法汇总
  12. Python:蜂巢(曼哈顿距离)
  13. iOS 启动页加入动态的广告实现
  14. 前端web:响应式Web开发优缺点总结
  15. 服务器微信了早上好,微信早晨好问候语句动态图片 早上好发给朋友的微信早安问候语简短...
  16. Maven手工安装jar包到本地仓库
  17. ORACLE取当天七点半
  18. 个人关于高考志愿填报的一丁点儿看法
  19. vue/cli4、webpack 简阅(希望能持续更新)
  20. python中matplotlib是什么意思_python中Matplotlib面向对象是什么?

热门文章

  1. RPM 包的构建 - SPEC 基础知识-01
  2. 山东理工大学ACM平台题答案关于C语言 1228 两数组最短距离
  3. 药物研发检测记录模板-0903不溶性微粒检查法检验原始记录
  4. 深度学习与神经网络之 反卷积/转置卷积 (deconvolution/transposed convolution/fractional strided convolution) (upsample)
  5. 小学计算机课基础知识教案,小学信息技术公开课教案
  6. IdentityServer4之Clients、Scopes、Claims与Token关联
  7. 如何写一份高可读性的软件工程设计文档
  8. java制作小鱼吃大鱼_大鱼吃小鱼游戏(Java编写)
  9. 提升领导力这7个法则,你不得不知道
  10. Torus登场:CoreOS打造的新一代分布式存储系统