1 条题解

  • 0
    @ 2025-8-24 21:21:52

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Yxa_Sheep
    打表过样例,暴力出奇迹,搜索真牛逼,骗分进省一||深搜 MLE,广搜 TLE,打表 RE,退火又 CE||删掉 display 看主页||被封取关(解封后私信)||六年级蒟蒻 ,代词请用“他”||当前状态:<离线>

    搬运于2025-08-24 21:21:51,当前版本为作者最后更新于2025-08-10 22:43:33,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    题目传送门

    题意

    给定 nn 个数,如果相邻数的差的绝对值可以组成一个从 11n1n-1 的序列,那么输出 Jolly,否则输出 Not jolly

    思路

    显然,我们可以用 bib_i 记下 ai+1ai|a_{i+1}-a_i| 的值,再进行从大到小排序。最后只需要遍历一遍,如果有某一位不等于 ii,那么输出 Jolly,并结束程序。否则输出 Not jolly

    代码

    #include <bits/stdc++.h>
    using namespace std;
    int n, a[1010], b[1010];
    int main()
    {
        scanf("%d", &n);
        for (int i = 1; i <= n; i++)
        	scanf("%d", &a[i]);
        for (int i = 1; i < n; i++)
        	b[i] = abs(a[i + 1] - a[i]);
        sort(b + 1, b + n);
    	for (int i = 1; i < n; i++)
    		if (b[i] != i)
    		{
    			printf("Not jolly");
    			return 0;
    		}
    	printf("Jolly");
    	return 0;
    }
    

    题解来之不易,且看且珍惜。给个赞再走吧。

    题目传送门

    • 1

    信息

    ID
    154
    时间
    1000ms
    内存
    125MiB
    难度
    1
    标签
    递交数
    1
    已通过
    1
    上传者