解题思路:求出公差后运用公式求解
注意事项:注意公差为0 情况,直接输出n
参考代码:
#include <iostream>
#include <cstring>
#include <vector>
#include <algorithm>
#include <cmath>
#include <iomanip>
#include <string>
using namespace std;
int a[100001];
int main()
{
int n,i;
cin>>n;
for(i=0;i<n;i++)
{
cin>>a[i];
}
sort(a,a+n);//排序
int minn=100000009;
for(i=0;i<=n-2;i++)
{
minn=min(minn,a[i+1]-a[i]);//求出公差
}
if(minn > 0 && (a[n-1] - a[0])%minn == 0)//特判
cout<<(a[n-1]-a[0])/minn+1;//注意公差为0情况
else
cout<<n;
return 0;
}
0.0分
1 人评分
C二级辅导-计负均正 (C语言代码)浏览:508 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:653 |
C语言训练-角谷猜想 (C++代码)(3N+1问题)浏览:1747 |
简单的a+b (C语言代码)浏览:573 |
校门外的树 (C语言代码)浏览:692 |
WU-C语言程序设计教程(第三版)课后习题11.12 (C++代码)(想学链表的小伙伴可以看看)浏览:899 |
【偶数求和】 (C语言代码)浏览:431 |
DNA (C语言代码)浏览:736 |
模拟计算器 (C语言代码)浏览:2299 |
上车人数 (C语言代码)浏览:710 |