zoukankan      html  css  js  c++  java
  • 洛谷 P1152 欢乐的跳 题解

    洛谷 P1152 欢乐的跳

    题目描述

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

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

    输入格式

    每组测试数据第一行以一个整数 (n(1 le n le 1000)n(1≤n≤1000)) 开始,接下来nn个空格隔开的在 $[-108−108,108108] $之间的整数。

    输出格式

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

    输入输出样例

    输入 #1复制

    4 1 4 2 3

    输出 #1

    Jolly

    输入 #2

    5 1 4 2 -1 6

    输出 #2

    Not jolly

    说明/提示

    (1 le n le 10001≤n≤1000)

    暴力、枚举
    一道非常水的暴力题目
    这道题其实有开两个数组和两个以上数组的解法
    但是我觉得这道题其实只需要开一个数组就够了
    开一个桶,每一次记录这个数和这个数前面的数
    将这两个数的差标为真
    输入完成之后,在从1枚举到n - 1如果里面有不是真的桶那就不符合“欢乐的跳”
    输出Not jolly然后return 0
    最后如果没有结束那就输出Jolly结束

    #include<iostream>
    #include<cmath>
    #include<cstdio>
    
    using namespace std;
    bool a[100000005];
    
    int main()
    {
    	int n;
    	int now,last = 0;
    	scanf("%d",&n);
    	for(int i = 1;i <= n;++ i)
    	{
    		scanf("%d",&now);
    		a[abs(now - last)] = true;
    		last = now;
    	}
    	for(int i = 1;i < n;++ i)
    	{
    		if(a[i] != true)
    		{
    			cout << "Not jolly" << endl;
    			return 0;
    		}
    	}
    	cout << "Jolly" << endl;
    	return 0;
    }
    

    超级大水题,纯粹是为了水作业才做的

  • 相关阅读:
    Stepping Number
    Replace String
    String Permutation
    Clock Angle
    Keypad Permutation
    Replace Words
    1、奉加微 PHY6202 Get started
    Python3 修改二进制文件
    Google Fast Pair
    python 校验 BLE resolvable private address
  • 原文地址:https://www.cnblogs.com/acioi/p/11600450.html
Copyright © 2011-2022 走看看