问题标题: 酷町堂:1059

0
0

0
已采纳
陆麟瑞
陆麟瑞
资深天翼
资深天翼

先把相邻元素的差值的绝对值求出来,可以用另一个数组来存放,然后对这些差值进行排序,对排序好的序列看是否是1...n-1的排列,如果是的话则输出Amazing,否则输出Normal。

for(int i=1; i<n; i++)
    b[i]=abs(a[i]-a[i+1]);//求绝对值
    for(int i=1; i<n-1; i++)
    for(int j=i; j<n; j++)
    if(b[i]>b[j])
    {
        tmp=b[i];
        b[i]=b[j];
        b[j]=tmp;
    }//这里是选择排序
    for(int i=1; i<=n-1; i++)
    {
    if(b[i]!=i) flag=false;
}
    if(flag) cout<<"Amazing";
    else cout<<"Normal";

 

提示:头文件加#include <cmath>

0
邵逸儒
邵逸儒
中级天翼
中级天翼
定义 n,js;
定义 a[1001],b[1000];
定义 main()
{
    输入n;
    循环 (int i=1; i<=n; i++) 输入a[i];
    循环 (int i=1; i<n; i++)
    {
        b[i]=abs(a[i]-a[i+1]);
    }
   循环 (int i=1; i<n-1; i++)
    {
        循环 (int j=i+1; j<n; j++)
        {
            如果 (b[i]>b[j]) swap(b[i],b[j]);
        }
    }
    循环 (int i=1; i<n; i++)
    {
        如果 (b[i]==i) js++; 
    }
    如果 (js==n-1) 输出"Amazing";
    否则 输出"Normal";
    返回值 0;
}

0
0
0
0
0
0
0
0
0
0
0
0
褚俊皓
褚俊皓
新手天翼
新手天翼

对排序好的序列看是否是1...n-1的排列,如果是的话则输出Amazing,否则输出Normal。

for(int i=1; i<n; i++)
    b[i]=abs(a[i]-a[i+1]);//求绝对值
    for(int i=1; i<n-1; i++)
    for(int j=i; j<n; j++)
    if(b[i]>b[j])
    {
        tmp=b[i];
        b[i]=b[j];
        b[j]=tmp;
    }//这里是选择排序
    for(int i=1; i<=n-1; i++)
    {
    if(b[i]!=i) flag=false;
}
    if(flag) cout<<"Amazing";
    else cout<<"Normal";

 

提示:头文件加#include <cmath>

我要回答