poj 2575 Jolly Jumpers

简介:

很奇怪的一道题,受了discuss的误导,居然当n==1的时候输出Jolly是错的,后来去掉反而正确了。。。

一个flag就搞定的东西,搞不懂为什么有些人用到排序,真是没事找事。。。

题目解析:求给出序列的各个值之差是否能覆盖1~n-1,要是能,输出:"Jolly",否则输出:"Not jolly",其实不难,只要把各个值得绝对值求出来,看能否覆盖1~n-1。


#include <stdio.h>
#include <string.h>

int flag[3002];

inline int myAbs(int a) { return a>0?a:(-a); }

int main()
{
	int n;

	int i;
	int x,y;
	while(~scanf("%d",&n))
	{
		memset(flag,0,sizeof(flag));

		scanf("%d",&x);
		for(i=1;i<n;i++)
		{
			scanf("%d",&y);
			flag[myAbs(y-x)]=1;
			x=y;
		}

		for(i=1;i<n;i++)
			if(flag[i]==0)
				break;

		if(i==n)
			printf("Jolly\n");

		else
			printf("Not jolly\n");
	}

	return 0;
}



相关文章
POJ 1936 All in All
POJ 1936 All in All
82 0
|
算法框架/工具
POJ 2262 Goldbach's Conjecture
POJ 2262 Goldbach's Conjecture
146 0
poj 3620
题意:给出一个矩阵,其中有些格子干燥、有些潮湿。       如果一个潮湿的格子的相邻的四个方向有格子也是潮湿的,那么它们就可以构成更大       的湖泊,求最大的湖泊。       也就是求出最大的连在一块儿的潮湿的格子的数目。
581 0
POJ 1804
题目:http://poj.org/problem?id=1804 大意:给你一串数字,排序。求出最少的交换次数  \ 我用归并做的 #include #include using namespace std; int aa[500010],bb[500010]; long lon...
707 0
|
消息中间件 人工智能 JavaScript
|
SDN
poj 2886 Who Gets the Most Candies?
点击打开poj 2886 思路: 求因子数+单点更新 分析: 1 题目的意思是有n个人构成一个环,刚开始是第k个人先出来。每个人有一个名字和数值A,如果A为正数,那么下一个出去的人是他左边的第A个人,如果是负数那么出去的将是右边的第A个人 2 这么我们要注意一下,因为n个人是围城一圈,那么左边就是顺时针方向,右边就是逆时针方向 3 那么我们就可以来推没一次出去的人的在剩下中是第几个。
789 0