Newcoder 82 D.比较月亮大小(水~)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/V5ZSQ/article/details/83211997

Description

点点是一名出色的狼人。众所周知,狼人只有在满月之夜才会变成狼。

同时,月亮的大小随着时间变化,它的大小变化 30 30 天为一循环。它的变化情况(从第一天开始)为 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 然后又再一次循环。

今年夏天点点很无聊,于是开始看月亮。由于点点很忙,所以他只选择一段连续的时间看月亮,并把月亮的大小记录了下来。

现在,他告诉你他记录下东西,让你告诉他下一天(即点点记录下的最后一天的第二天)的月亮是比前一天(即点点记录下的最后一天)大还是小。

Input

给你一个正整数 n n 表示点点记录下的时间个数。
下一行 n n 个自然数表示点点记录下的月亮大小。

( n 100 , 0 a i 15 ) (n\le 100,0\le a_i\le 15)

Output

一个字符串。

如果下一天的比前一天的大则输出 " U P " "UP"

如果下一天的比前一天的小则输出 " D O W N " "DOWN"

如果无法判断则输出$"-1" $

Sample Input

5
3 4 5 6 7

Sample Output

UP

Solution

最后一个数为 0 0 必然要 U P UP ,为 15 15 必然要 D O W N DOWN ,否则 n = 1 n=1 时无法判断, n > 1 n>1 时判断后两个数的大小关系即可

Code

#include<cstdio>
using namespace std;
int main()
{
	int n,a[105];
	scanf("%d",&n);
	for(int i=1;i<=n;i++)scanf("%d",&a[i]);
	if(n==1)
	{
		if(a[1]==15)printf("DOWN\n");
        else if(a[1]==0)printf("UP\n");
		else printf("-1\n");
	}
	else
	{
		if(a[n]>a[n-1])
		{
			if(a[n]==15)printf("DOWN\n");
			else printf("UP\n");
		}
		else
		{
			if(a[n]==0)printf("UP\n");
			else printf("DOWN\n");
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/V5ZSQ/article/details/83211997
82!
82