这是个什么题啊,F**K!
答案一定是斜率最大的相邻两点!!(很容易想明白的,这里不给出了)
#include <stdio.h>
#include <math.h>
double f[100005];
double k(int a,int b)
{
return fabs((f[b]-f[a])/(double)(b-a));
}
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%lf",&f[i]);
int x=1,y=2;
double ans=k(1,2);
for(int i=2;i<n;i++)
{
if(k(i,i+1)>ans)
{
ans=k(i,i+1);
x=i;
y=i+1;
}
}
printf("%d %d\n",x,y);
return 0;
}
本文提供了一种通过计算每一对相邻点之间的斜率来找出斜率最大线段的算法实现。采用C语言编程,适用于解决特定类型的数学问题。
512

被折叠的 条评论
为什么被折叠?



