题解 CF34A 【Reconnaissance 2】

ShineEternal

2019-09-01 17:15:15

Solution

## 题目链接: https://www.luogu.org/problem/CF34A ## 分析: 这道题其实就是让你逐个找两个数之间的差的绝对值,显然,一共有$n$对,问其中最小的一对。 我们只需要循环逐一对比即可。 这里要注意的是因为这道题是一个环,所以n和1要单独判断。 ```cpp #include<cstdio> #include<iostream> using namespace std; int h[105]; int abs(int x) { if(x<0)return -x; return x; } int main() { int n,ans=2147483640; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&h[i]); } int tag1,tag2; for(int i=2;i<=n;i++) { if(abs(h[i]-h[i-1])<ans) { ans=abs(h[i]-h[i-1]); tag1=i; tag2=i-1; } } if(abs(h[n]-h[1])<ans) { ans=abs(h[n]-h[1]); tag1=n; tag2=1; } printf("%d %d\n",tag1,tag2); return 0; } ```