The Number Off of FFF
X soldiers from the famous “
FFF
army'' is standing in a line, from left to right.
You, as the captain of FFF
, decides to have a number off
, that is, each soldier,
from left to right, calls out a number.
The first soldier should call One
, each other soldier should call the number next to the number
called out by the soldier on his left side. If every soldier has done it right,
they will call out the numbers from 1
to X
, one by one, from left to right.
Now we have a continuous part from the original line.
There are N
soldiers in the part.
So in another word, we have the soldiers whose id are between A
and A+N−1
(1≤A≤A+N−1≤X
).
However, we don't know the exactly value of A
, but we are sure the soldiers stands continuously in the original line, from left to right.
We are sure among those N
soldiers, exactly one soldier has made a mistake.
Your task is to find that soldier.
Input
The first line has a number T (
T≤10 ) , indicating the number of test cases.
For each test case there are two lines. First line has the number N ,
and the second line has N
numbers, as described above. (3≤N≤105
)
It guaranteed that there is exactly one soldier who has made the mistake.
Output
For test case X
, output in the form of Case #X: L
, L
here means the position of soldier among the N
soldiers
counted from left to right based on 1
.
Sample Input
2
3
1 2 4
3
1001 1002 1004
Sample Output
Case #1: 3
Case #2: 3
这个题很好理解,就是一个序列,每个数比前一个数大一,如果不是就是错误的,要求输出错误的数
但是我有一个疑问,如果后面的都对,就第一个不对怎么办?
我跟同学商量了一下,但是他说不可能,是一遍输入一遍判断,一开始我以为我读错了,但是现在发现不是那回事好像,因为一开始要求输入几个数,然后再输入各个数,如果1 2 4 5该怎么办,这个算哪个错,然后我就不管不顾的写了代码,对了
#include<cstdio>
int main()
{
int t,n,x,j,i,y;
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%d",&n);
scanf("%d",&x);
int cnt=1;
for(j=2;j<=n;j++)
{
scanf("%d",&y);
if(y-x!=1)
{
cnt=j;
}
x=y;
}
printf("Case #%d: %d\n",i,cnt);
}
return 0;
}
同学写的就是考虑了我举得例子,他是按第一个是正确答案输出的
#include<stdio.h>
int main()
{
int T,N,i,j,k,temp,cnt,flag;
scanf("%d",&T);
for(i=1;i<=T;i++)
{
scanf("%d",&N);
scanf("%d",&temp);
flag=cnt=1;
for(j=2;j<=N;j++)
{
scanf("%d",&k);
if(k-temp!=1&&flag)
{cnt=j;flag=0;}
temp=k;
}
printf("Case #%d: %d\n",i,cnt);
}
return 0;
}
这个应该很好理解吧,水题啊
The Number Off of FFF的更多相关文章
- 水题 HDOJ 4727 The Number Off of FFF
题目传送门 /* 水题:判断前后的差值是否为1,b[i]记录差值,若没有找到,则是第一个出错 */ #include <cstdio> #include <iostream> ...
- 周赛-The Number Off of FFF 分类: 比赛 2015-08-02 09:27 3人阅读 评论(0) 收藏
The Number Off of FFF Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- HDU 4727 The Number Off of FFF
The Number Off of FFF Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- HDU 4727 The Number Off of FFF (水题)
The Number Off of FFF Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- HDUOJ----The Number Off of FFF
The Number Off of FFF Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- hdu4727 The Number Off of FFF
理解错题意,wa了几次. 我一开始的理解忽略了实际背景,认为错报是绝对的,不依赖于其左边的人. 而实际上某士兵报数的对错取决且仅取决于他所报的数与其左邻所报的数. 所以假设第一个人没有报错,则其后必有 ...
- HDU-4727 The Number Off of FFF 水题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4727 水题.. //STATUS:C++_AC_187MS_288KB #include <fu ...
- HDU 4727 The Number Off of FFF 2013年四川省赛题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4727 题目大意:队列里所有人进行报数,要找出报错的那个人 思路:,只要找出序列中与钱一个人的数字差不是 ...
- 移除input number上的spinner
HTML 5 的表单中有着丰富的input种类,比如说input[type="number"],就可以保证用户输入数字,但是input也有一些不好的地方——带有 spinner. ...
随机推荐
- 开源代码分析之Android/iOS Hybrid JSBridge框架
Hybrid开发是现在的主流形式,对于业务快速迭代的公司尤其重要.曾将在鞋厂接触了很多关于Hybrid的理念,在这里分享一些Hybrid框架思想. Hybrid框架包括Native与H5的通信,Web ...
- Nodejs:简单的脚手架(一)
html-webpack-plugin: 用来生成html文件的插件 glob: 用来筛选文件,文件目录 path: 管理文件路径 次脚手架里主要用到的是这3个插件,后续会根据所用插件逐渐完善 ...
- iOS移动硬盘实现原理
iOS移动硬盘,仅仅是一个概念的包装,原理是在用户目录下创建一个特定的目录,应用层做一个界面直接访问这个目录而已. 大概流程是: 监听获得device句柄. AMDeviceConnect连接设备,并 ...
- visual studio code 里调试运行 Python代码
最近对微软的visual studio code 挺感兴趣的,微软的跨平台开发工具.轻量简洁. 版本迭代的也挺快的,截止16年8月2日已经1.3.1版本了,功能也愈加完善.(16年12月18日 已经, ...
- Linux TOP命令 按内存占用排序和按CPU占用排序
P – 以 CPU 占用率大小的顺序排列进程列表M – 以内存占用率大小的顺序排列进程列表 http://blog.csdn.net/xiliuhu/article/details/6449377
- XDebug 自动开启PHP Stack Trace, 导致PHP Log 超1G
昨天早上突然发现测试服务器空间满了,用du挨个文件夹查看,发现是php debug log占地极大,有的log直接有1G,打开后发现极其多的php stack trace. 立刻到主服务器查看,主服务 ...
- 磁盘io的那些事
1.使用hdparm命令 hdparm -Tt /dev/sda /dev/sda: Timing cached reads: 6676 MB in 2.00 seconds = 3340.18 M ...
- 控制反转IOC的依赖注入方式
引言: 项目中遇到关于IOC的一些内容,因为和正常的逻辑代码比较起来,IOC有点反常.因此本文记录IOC的一些基础知识,并附有相应的简单实例,而在实际项目中再复杂的应用也只是在基本应用的基础上扩展而来 ...
- GCD的简单用法
/* 创建一个队列用来执行任务,TA属于系统预定义的并行队列即全局队列,目前系统预定义了四个不同运行优先级的全局队列,我们可以通过dispatch_get_global_queue来获取它们 四种优先 ...
- docker 使用非加密registry
配置docker成为服务,自启动 sudo systemctl enable docker.service 启动服务 sudo systemctl start docker docker默认要求我们使 ...