欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

hnust 神奇的序列

发布时间:2025/3/15 编程问答 33 豆豆
生活随笔 收集整理的这篇文章主要介绍了 hnust 神奇的序列 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

问题 E: 神奇的序列

时间限制: 1 Sec  内存限制: 128 MB
提交: 635  解决: 84
[提交][状态][讨论版]

题目描述

Aurora在南宁发现了一个神奇的序列,即对于该序列的任意相邻两数之和都不是三的倍数。现在给你一个长度为n的整数序列,让你判断是否能够通过重新排列序列里的数字使得该序列变成一个神奇的序列。

输入

第一行包含一个数字T(T <= 50), 表示测试数据组数。

每一组测试数据首先给出一个数字n(2 <= n <= 200) 表示序列的长度,接下来n个数ai(1<= ai <= 100) 表示该序列。

输出

每组测试数据输出一行。如果序列能通过重新排列变成一个神奇的序列,输出”pulsating!” 否则输出”day day up!”。

样例输入

2 4 1 3 2 4 6 1 2 3 6 3 27

样例输出

pulsating! day day up!


把每个数对3取余,然后记0,1,2的个数,如果有1有2没有0或者0的个数大于1和2的个数和加一则是day day up! #include <cstdio> int main() {int t,n,s,a,ans,cut,res,flag,i;scanf("%d",&t);while(t--){flag=1;ans=0,cut=0,res=0;for(scanf("%d",&n),i=0;i<n;i++){scanf("%d",&a);s=a%3;if(s==0) ans++;else if(s==1) cut++;else if(s==2) res++;}if(ans>1+cut+res) flag=0;else if(ans<cut+res){if(ans==0&&(cut!=0&&res!=0)) flag=0;}if(flag) printf("pulsating!\n");else printf("day day up!\n");}return 0; } View Code

 

转载于:https://www.cnblogs.com/wandso/p/10062045.html

总结

以上是生活随笔为你收集整理的hnust 神奇的序列的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。