蓝桥杯每日一题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;
}
相关推荐
LYFlied3 小时前
【每日算法】LeetCode 416. 分割等和子集(动态规划)
数据结构·算法·leetcode·职场和发展·动态规划
坚持学习前端日记4 小时前
软件开发完整流程详解
学习·程序人生·职场和发展·创业创新
张老师Plus7 小时前
依依东望,望的是时间
经验分享·程序人生·面试·职场和发展·跳槽
坚持学习前端日记10 小时前
2025年的个人和学习年度总结以及未来期望
java·学习·程序人生·职场和发展·创业创新
爱敲代码的边芙14 小时前
秋招面试准备(后端开发)
面试·职场和发展
坚持学习前端日记14 小时前
个人运营小网站的最佳策略
java·学习·程序人生·职场和发展·创业创新
大布布将军15 小时前
☁️ 自动化交付:CI/CD 流程与云端部署
运维·前端·程序人生·ci/cd·职场和发展·node.js·自动化
leoufung16 小时前
LeetCode 322. Coin Change:从错误思路到正确一维 DP
算法·leetcode·职场和发展
Swift社区16 小时前
LeetCode 463 - 岛屿的周长
算法·leetcode·职场和发展