问题标题: 酷町堂:1556

0
0
王冠琪
王冠琪
新手守护
新手守护

1556   海拔高度之谜

经验值:1200 时间限制:1000毫秒

题目描述 Description

小王奉命去测绘A地附近的地形,要求对附近地形的海拔高度进行测量,一共要测量n个数据,经过测量和计算,小王发现两个连续数值之间差的绝对值包括了[1,n-1]之间的所有整数,如1 4 2 3的差的绝对值分别为:3,2,1。现在小王去B地继续测量任务,请问他在这里测量的数据能满足这个原理吗?

输入描述 Input Description

以一个整数n(1<=n<=1000)开始,接下来n个空格隔开的在[-100,100]之间的整数

输出描述 Output Description

输出一行若该数组符合规律则输出"Yes",否则输出"No"

样例输入 Sample Input

样例一: 4 1 4 2 3 样例二: 5 1 4 2 -1 6

样例输出 Sample Output

样例一: Yes 样例二: No

#include<iostream>
#include<cmath>
using namespace std;
int a[1005],b[1005],c[1005];
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    for(int i=1;i<=n-1;i++){
        b[i]=abs(a[i]-a[i+1]);
        c[b[i]]++;
    }
    for(int i=1;i<=n;i++){
        if(c[i]>=1&&i>n-1||c[i]==0&&i<=n-1){
            cout<<"No";
            break;
        }
        else{
            cout<<"Yes";
            break;
        }
    }
    return 0;
}

50分,哪错了


0
0
我要回答