首页 > 代码库 > 考试题

考试题

1第一题

(T1.pas/c/cpp)

【问题描述】

TZJ最近迷上了一款叫车丁卡泡泡(什么鬼)的游戏,成天漂移旋转还闭着眼。有一天,TZJ给zyj秀了一把道具赛,结果被别人虐的不要不要的,尤其是有个叫做导弹的道具怎么也打不到别人。Zyj最后扔下一句:“菜!”最后扬长而去留下了一只失去了信心的TZJ。深受打击的TZJ决定好好练习导弹的使用技巧,作为程序员的TZJ便做了一个脚本拿来练习。

TZJ的脚本让TZJ拥有了一条笔直的赛道,并且为了自己可以更好的打中自己要打中的n个目标,于是便让大家都保持不动。刚开始,胆怯的TZJ只刚开始的射程只有m(就是能打中于他的距离不大于m的目标),但是如果他每打中了一次目标,便会恢复一点自信,于是他的射程就会提高5。而他的导弹道具只有每次打中目标才会再补回一个(刚开始也就一个)。呢么作为上帝视角的你,能否知道他最多能够打中多少的目标并且当他打光自己的导弹时他的射程会变成多少呢?

【输入】

第一行两个正整数 n,m,表示总共有多少个目标和TZJ的起始射程

接下来的n行,代表这n个目标距离TZJ的距离。

【输出】

一行两个整数表示他最多打中的目标数和最终他的射程。

【输入输出样例】

T1.in

T1.out

3 70

60

75

80

3 85

 

【数据范围】

        n<10000 

注释:“我们皮日天是这样的。”又一次没打中别人输掉比赛。TZJ如是说道。

2第二题

  (T2.pas/c/cpp)

【问题描述】

mzx去爬山了!现在有一排山,编号从1到n。

在m天之内,mzx每天都去爬山。每天,mzx都会选择一座山作为起点,向左或向右爬到第k个比起点高或低的山峰。mzx想知道他每天会爬到哪座山。

【输入】

第一行两个整数n,m,第二行为用空格隔开的n个数,代表编号为1到n的山峰的高度。从第三行到第m+2行,每行四个数a,b,x,k代表mzx这一天的爬山计划。x是作为起点的山峰的编号,a=0代表mzx会向左出发,a=1代表mzx会向右出发;b=0代表mzx要爬到第k个比起点低的山峰,b=1代表mzx要爬到第k个比起点高的山峰。

【输出】

输出mzx在第1到第m天爬到的那座山的编号,每个编号占一行。

如果不存在符合要求的山峰,输出 “-1”。

【输入输出样例】

T2.in

T2.out

5 3

4 1 3 10 2

0 0 2 1

1 1 2 1

0 1 5 2

-1

3

3

【数据范围】

1<=n,m<=5000

 

 

 

 

 

 

 

 

 

 

 

3.第三题

  (T3.pas/c/cpp)

【问题描述】

lzh有这样的一个数字序列123456789101112131415161718……

lzh想向你询问这个序列的第n个数是多少。

【输入】

只有一个整数n。

【输出】

数字序列的第n个。

【输入输出样例1】

T3.in

T3.out

5

5

【输入输出样例2】

T3.in

T3.out

10

0

 

【数据范围】

对于30%的数据 保证1<=n<=100000000

对于100%的数据 保证 1<=n<=10000000000000000

 

考试题