蓝桥杯每日一题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;
}
相关推荐
Dr.kangder1 小时前
嵌入式面试总结(一)——嵌入式系统实时性
面试·职场和发展·架构·嵌入式·虚拟化
退休倒计时2 小时前
【每日一题】LeetCode 88. 合并两个有序数组 TypeScript
算法·leetcode·职场和发展·typescript
Hi李耶4 小时前
【LeetCode】17.电话号码的字母组合
算法·leetcode·职场和发展
测试19981 天前
2026全新软件测试面试八股文(含答案+文档)
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例
退休倒计时1 天前
【每日一题】LeetCode 20. 有效的括号 TypeScript
算法·leetcode·职场和发展·typescript
.道阻且长.1 天前
3.LeetCode算法习题讲解--双指针--快乐数
算法·leetcode·职场和发展
城管不管1 天前
第八次面试2026.8.10
面试·职场和发展
.道阻且长.2 天前
2.LeetCode算法习题讲解--双指针--复写零
算法·leetcode·职场和发展
一只齐刘海的猫2 天前
【Leetcode】乘积最大子数组
算法·leetcode·职场和发展