Codeforces Beta Round #34 (Div. 2) A题解题报告

来源:互联网 发布:js得到指定时间戳 编辑:程序博客网 时间:2024/04/30 04:35

这题很水,一定要理解什么意思,就是求相邻两个数之间差最小的两个位置,其中特别要注意的是第一个和最后一个也可以相减,可以看成是一个环!

#include<cstdio>

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    int n,i,a[105],endb,x,min,h;
    while(cin>>n)
    {
        for(i=1;i<=n;i++)
            cin>>a[i];
        a[n+1]=a[1];
        min=100000;//这里我一开始就犯了错误,写成100后,WA,就把其改大了点!
        for(i=1;i<=n;i++)
        {
            x=abs(a[i]-a[i+1]);
            if(x<min)
            {
                min=x;
                endb=i;
            }
        }
        if(endb==n)
            h=1;
        else
            h=endb+1;
        printf("%d %d\n",endb,h);
    }
    return 0;
}
原创粉丝点击