社区讨论

站外题(求调)

灌水区参与者 3已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@m0am4lsx
此快照首次捕获于
2024/08/26 14:23
2 年前
此快照最后确认于
2025/11/04 22:23
4 个月前
查看原帖

jumper

问题描述
对于一个包含 n 个元素的整数序列,如果序列中相邻元素之差的绝对值取遍
从 1 到 n-1 的所有整数,那么这个序列就叫做 jolly jumper。例如:1423
就是一个 jolly jumper,因为相邻元素之差的绝对值分别为 3、2、1。这个定义
意味着所有单元素序列都是 jolly jumper。写一个程序来判断一个序列是不是
jolly jumper。
输入格式
输入文件 jumper.in。
有若干行,每行描述一个整数序列,先是一个整数 n(0<n≤3000)表示序列 的元素个数,然后是 n 个整数,每个整数之间用一个空格隔开。 输出格式
输出文件 jumper.out。 对于输入的每一行,输出一行“Jolly”或者“Not jolly”来表示它是否为jolly jumper。
注意输出字母的大小写问题。
样例输入
4 1 4 2 3
5 1 4 2 -1 6
样例输出
Jolly
Not jolly
CPP
#include<bits/stdc++.h>
using namespace std;
int n,a[3001];
bool k=false;
int main( ){
	while(scanf("%d",&n)!=EOF){
		cin>>a[1];
		for(int i=2;i<=n;i++){
			cin>>a[i];
			if(abs(a[i-1]-a[i])>=n)
			k=true;
		}
		if(k==true)
		cout<<"Not jolly"<<endl;
		else
		cout<<"jolly"<<endl;
	} 
	return 0;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...