此题为《算法艺术与信息学竞赛》中的习题。
不难证明,满足条件的点如果斜率的绝对值最大,两点必相邻。
以下是我的代码:
#include<iostream>
using namespace std;
long long Abs(long long a)
{
return a>0?a:-a;
}
int main()
{
const long maxn=100007;
long long n,ans,a[maxn];
cin>>n;
for(long i=1;i<=n;i++) cin>>a[i];
// Read In
ans=1;
for(long i=1;i<n;i++)
if(Abs(a[i+1]-a[i])>Abs(a[ans+1]-a[ans]))
ans=i;
cout<<ans<<" "<<ans+1<<endl;
return 0;
}
posted on 2010-01-14 22:50
lee1r 阅读(199)
评论(0) 编辑 收藏 引用 所属分类:
题目分类:数学/数论