蓝桥杯每日一题2023.10.20

题目描述

等差数列 - 蓝桥云课 (lanqiao.cn)

知识点:

排序找出最大公约数则为公差

项数: n = (第n项值-首项) / 公差 +1。 n = (an-a1) / d+1
cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 2e5 + 10;
int a[N], n;
int gcd(int a, int b)
{
	return a ? gcd(b % a, a) : b;
}
int main()
{
	cin >> n;
	for(int i = 1; i <= n; i ++)
	{
		cin >> a[i];
	}
	sort(a + 1, a + 1 + n);
	int d = 0;
	for(int i = 2; i <= n; i ++)
	{
		d = gcd(d, a[i] - a[i - 1]);	
	}	
	if(d == 0)cout << n;
	else cout << (a[n] - a[1]) / d + 1;
	return 0;
}
相关推荐
静若繁花_jingjing1 小时前
面试_场景方案设计_联系
面试·职场和发展
墨染点香2 小时前
LeetCode 刷题【128. 最长连续序列】
算法·leetcode·职场和发展
熬了夜的程序员2 小时前
【LeetCode】82. 删除排序链表中的重复元素 II
数据结构·算法·leetcode·链表·职场和发展·矩阵·深度优先
前端架构师-老李4 小时前
职场发展—如何避雷垃圾公司
职场和发展
天才测试猿6 小时前
黑盒测试用例的四种设计方法
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
墨染点香14 小时前
LeetCode 刷题【126. 单词接龙 II】
算法·leetcode·职场和发展
坚持编程的菜鸟21 小时前
LeetCode每日一题——三角形的最大周长
算法·leetcode·职场和发展
爱吃生蚝的于勒1 天前
【Linux】深入理解进程(一)
java·linux·运维·服务器·数据结构·c++·蓝桥杯
爱coding的橙子1 天前
每日算法刷题Day76:10.19:leetcode 二叉树12道题,用时3h
算法·leetcode·职场和发展