iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 28
1
自我挑戰組

一日一CPE系列 第 28

[Day28]10038: Jolly Jumpers

  • 分享至 

  • xImage
  •  

考題日期:2017/03/28
題號:10038
星等:1
語言:C++


題目:
https://ithelp.ithome.com.tw/upload/images/20191013/20120937qp1Tjhqory.png


題意:
有n個整數的序列我們稱為jolly jumper,如果相鄰的2個數其差的絕對值恰好為1到n-1。
有一個 n 個整數的序列且相鄰兩個數的差值的絕對值恰好為 1 到 n-1 ,此序列我們稱為Jolly,判斷輸入之數字是否為Jolly。


程式:

#include <iostream>
#include <cmath>
#include <algorithm>

using namespace std;

int main()
{
    int n;
    while(cin>>n)
    {
        bool key =true;
        int num[n],d[n-1];
        for(int i = 0 ; i < n ; i++)
        {
            cin>>num[i];
        }
        for(int i = 0 ; i < n - 1 ; i++)
        {
            d[i] = abs(num[i+1] - num[i]);
        }
        sort(d,d+n-1);
        for(int i = 0 ; i < n - 1 ; i++)
        {
            if(d[i] != i + 1)
            {
                key = false;
                break;
            }
        }
        if(key)
            cout<<"Jolly"<<endl;
        else
            cout<<"Not jolly"<<endl;
    }
    return 0;
}


測資:
https://ithelp.ithome.com.tw/upload/images/20191013/20120937iVV29SFy7s.png


上一篇
[Day27]10533: Digit Primes
下一篇
[Day29]10905: Children's Game
系列文
一日一CPE30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言