1641: 电子狗的心事

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

题目描述

计算机程序世界中有一位孤独的电子狗,这个电子狗每次只能执行一种操作指令:朝着现在的方向前进X米,然后左转。 电子狗认为,它不断的执行这样的指令,最终有一条指令,能使它回到曾经走过的地方。 然而,实际上,当它已经执行完给定它的n条指令时,并不一定会回到它曾经走过的地方。
并且,电子汪很想知道结果。如果给了它n条指令,在第几条指令时,它能第一次回到自己已经走过的地方。如果指令执行完,都没有回到它曾经走过的地方,电子汪将会十分伤心,这个时候请输出“regret”。

输入

第一行为T,表示输入数据组数。 每组数据的第一行包含一个数n,表示指令长度。接着一行包含n个数字ai,表示第i个指令中,前行的距离。
1<=T<=100
1<=n<=1 000 000
1<=ai<=1 000 000 000

输出

对每组数据输出第一次回到已经走过的位置时为第几条指令。 如果电子汪最终没有回到过自己走过的地方,请输出“regret”。

样例输入

3
6
1 1 1 1 1 1
5
1 1 2 2 3
7
1 10 20 10 19 3 1

样例输出

4
regret
5

该题可分为三种情况情况,然后按照边长关系就可以知道电子狗是否走到曾经走过的位置

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+10;
int a[maxn];
int main()
{
int t,n,i;
cin>>t;
while(t--)
{
int way=0;
cin>>n;
for(i=1;i<=n;i++) cin>>a[i];
if(n<=3)
{
cout<<"regret\n";
continue;
}
for(i=4;i<=n;i++)
{
if(i>=4)
{
if(a[i]>=a[i-2]&&a[i-3]>=a[i-1])
{
way=i;
break;
}
}
if(i>=5)
{
if(a[i]+a[i-4]>=a[i-2]&&a[i-1]==a[i-3])
{
way=i;
break;
}
}
if(i>=6)
{
if(a[i]+a[i-4]>=a[i-2]&&a[i-1]+a[i-5]>=a[i-3]&&a[i-1]<=a[i-3]&&a[i-2]>=a[i-4])
{
way=i;
break;
}
}
}
if(way==0) cout<<"regret\n";
else cout<<way<<endl;
}
return 0;
}

SUST OJ 1641: 电子狗的心事的更多相关文章

  1. SUST OJ 1642: 绝地求生—死亡顺序

    1642: 绝地求生-死亡顺序 时间限制: 1 Sec  内存限制: 128 MB提交: 81  解决: 53[提交][状态][讨论版] 题目描述 最近陕西科技大学六公寓的小东同学深深的入迷了一款游戏 ...

  2. SUST OJ 1675: Fehead的项目(单调栈)

    1675: Fehead的项目 时间限制: 1 Sec  内存限制: 128 MB提交: 41  解决: 27[提交][状态][讨论版] 题目描述 Fehead俱乐部接手了一个项目,为了统计数据,他们 ...

  3. SUST OJ 1674: 入侵与反击(最长不下降子序列)

    1674: 入侵与反击 时间限制: 1 Sec  内存限制: 128 MB提交: 229  解决: 28[提交][状态][讨论版] 题目描述 A国部署的反导系统遇到了一个致命BUG,那就是每一次发射的 ...

  4. SUST OJ 1671: 数字拼图

    1671: 数字拼图 时间限制: 1 Sec  内存限制: 16 MB提交: 34  解决: 19[提交][状态][讨论版] 题目描述 拼图游戏即在任意一个N*N(N>1)的拼图中,会把一张完整 ...

  5. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  6. [C#] 逆袭——自制日刷千题的AC自动机攻克HDU OJ

    前言 做过杭电.浙大或是北大等ACM题库的人一定对“刷题”不陌生,以杭电OJ为例:首先打开首页(http://acm.hdu.edu.cn/),然后登陆,接着找到“Online Exercise”下的 ...

  7. oj Rapid Typing

    import bs4 import requests import urllib2 import time import base64 session=requests.Session() respo ...

  8. 在线OJ实用技巧(转载)

    1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 2.有时候int型不够用,可以用long long或__int64型(两个下 ...

  9. OJ生成器(一)制作Online Judge前的准备和策划

    我这校区新的微机老师斗志昂扬,准备让我们这学校萎靡的信息技术竞赛重振雄风.然后有一次我半开玩笑地说建一个自己的OJ吧,老师也就鼓励我去做了. 开什么玩笑……!我可是马上要参加NOIP的人! 于是老师说 ...

随机推荐

  1. C#中正确使用enum做Key的姿势

    C#中自定义enum,然后将其作为Dictionary的Key,通常的做法如下: using System; using System.Text; using System.Collections.G ...

  2. Confluence 6 使用 LDAP 授权连接一个内部目录 - 用户 Schema 设置

    请注意:这部分仅在拷贝用户登录(Copy User on Login)功能被启用后可见. 其他用户 DN(Additional User DN) 这个值被用在进行用户查找和载入的时候来针对 base ...

  3. hdu6394Tree lct

    树上弹飞绵羊,现场树分块没写出来= = 先预处理倍增,新建一个n+1节点,能弹到就建一条边,然后每操作2就cut,然后link,1的答案就是x到n+1的距离, //#pragma GCC optimi ...

  4. hpu积分赛(回溯法)

    问题 : 不开心的小明① 时间限制: 1 Sec 内存限制: 128 MB 提交: 2 解决: 1 题目描述 一天, 小明很不开心,先是向女神表白被拒, 数学又考了0分, 回家的路上又丢了钥匙, 他非 ...

  5. SSH 不分配远程主机tty

    $ host N参数,表示只连接远程主机,不打开远程shell:T参数,表示不为这个连接分配TTY.这个两个参数可以放在一起用,代表这个SSH连接只用来传数据,不执行远程操作.

  6. Rancher 企业级docker管理平台

    启动Rancher 加入ca证书: docker run -d  --restart=unless-stopped -p 8080:8080 -v /root/cacert.crt:/var/lib/ ...

  7. golang channel本质——共享内存

    channel是golang中很重要的概念,配合goroutine是golang能够方便实现并发编程的关键.channel其实就是传统语言的阻塞消息队列,可以用来做不同goroutine之间的消息传递 ...

  8. notepad++设置右键

    Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\Shell\NotePad++][HKEY_CLASSES_ROOT\*\Shell\ ...

  9. BZOJ1605 [Usaco2008 Open]Crisis on the Farm 牧场危机

    标题好长&&我是权限狗,汪汪! 题没看懂的我以为这是一道极难滴题目...然后,然后我就看懂题了. 数据少给了一个条件K <= 30...(没这条件还做个鬼...) f[k, i, ...

  10. POJ 3308 Paratroopers 最大流,乘积化和 难度:2

    Paratroopers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7267   Accepted: 2194 Desc ...