UVA1594-Ducci 队列
2015-12-03 13:51
302 查看
大意:给n组数据,每组数据是由m个整数组成的数列,然后每相邻两项相减,取绝对值构成一个新数列(最后一项和第一项相减)
如果该新数列全部为0,则输出ZERO
如果在这个过程中出现了循环,那就输出LOOP
给定的数列一定会在1000次以内判断是循环或者为0
vector容器+暴力
如果该新数列全部为0,则输出ZERO
如果在这个过程中出现了循环,那就输出LOOP
给定的数列一定会在1000次以内判断是循环或者为0
vector容器+暴力
#include<iostream> #include<cstdio> #include<string> #include<set> #include<algorithm> #include<vector> using namespace std; set< vector<int> >All; int main() { int n,m; scanf("%d",&n); while(n--) { int x; scanf("%d",&m); vector<int>One; for(int i=0;i<m;i++) { scanf("%d",&x); One.push_back(x); } vector<int>Pre; int sign=0; All.clear(); for(int k=0;k<1001;k++) { sign=0; All.insert(One); int a=One[0]; for(int i=0;i<m;i++) One[i]=abs(i<m-1?One[i]-One[i+1]:One[i]-a); for(int i=0;i<m;i++) if(One[i]!=0) { sign=1; continue; } if(sign==0) break; if(All.count(One)) { sign=1; break; } } if(sign==0) printf("ZERO\n"); else printf("LOOP\n"); } return 0; }
相关文章推荐
- 创建分区表1:Create Table on partition scheme
- 【原创】java NIO FileChannel 学习笔记 新建一个FileChannel
- 5 个 Composer 小技巧
- iOS开发多线程篇—GCD的常见用法(一)
- div弹出消息框
- centos6 64X rsync 使用实战
- 最长公共子序列LCS
- Screen
- UVALive - 3942 Remember the Word
- Sublime 3 打造成 Python/Django IDE开发利器
- 【Codeforces Round 330 (Div 2)C】【博弈 贪心 脑洞】n个数AB轮流选到只剩俩,A希望差小B希望差大问最后差值
- 好的架构是进化来的,不是设计来的
- 如何延迟执行一个block类似performSelector:withObject:afterDelay:?
- JavaWeb开发之简单布局一个Servlet
- 01背包问题
- 将自己的代码上传到maven中央库
- CocoaPods安装和使用教程
- 创建分区表和查看分区表的Metadata
- 表单验证收获
- python 之模块之 xml.dom.minidom解析xml