欢乐的跳#洛谷

发布时间:2024年01月16日

题目描述

一个 n n n 个元素的整数数组,如果数组两个连续元素之间差的绝对值包括了 [ 1 , n ? 1 ] [1,n-1] [1,n?1] 之间的所有整数,则称之符合“欢乐的跳”,如数组 { 1 , 4 , 2 , 3 } \{1,4,2,3\} {1,4,2,3} 符合“欢乐的跳”,因为差的绝对值分别为: 3 , 2 , 1 3,2,1 3,2,1

给定一个数组,你的任务是判断该数组是否符合“欢乐的跳”。

输入格式

每组测试数据第一行以一个整数 n ( 1 ≤ n ≤ 1000 ) n(1 \le n \le 1000) n(1n1000) 开始,接下来 n n n 个空格隔开的在 [ ? 1 0 8 , 1 0 8 ] [-10^8,10^8] [?108,108] 之间的整数。

输出格式

对于每组测试数据,输出一行若该数组符合“欢乐的跳”则输出 Jolly,否则输出 Not jolly

样例 #1

样例输入 #1

4 1 4 2 3

样例输出 #1

Jolly

样例 #2

样例输入 #2

5 1 4 2 -1 6

样例输出 #2

Not jolly

提示

1 ≤ n ≤ 1000 1 \le n \le 1000 1n1000

mapp=list(map(int,input().split()))
length=mapp[0]
data=[]
for item in range(1,length):
    value_num=abs(mapp[item]-mapp[item+1])
    data.append(value_num)
data=list(set(data))
compare_value=[m for m in range(1,length)]
if data==compare_value:
    print("Jolly")
else:
    print("Not jolly")

比较简单的一道题目。这里最好就是用set容器,之前用c++的时候,也经常用。这个容器就是,将数列进行排序并且对于重复的元素进行去重。而且py语言,只需要对数列进行set的数列进行强制转换就可以。而不是需要进行set的重新定义。

文章来源:https://blog.csdn.net/KLSZM/article/details/135617271
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。