2017西电机试算法题
2017西电机试算法题
时间:2025年3月17日19:55:38 start->
Problem 1
题目描述:在一个整体序列a1,a2,……,an中,如果存在某个数,大于它的整数数量等于小于它的整体数量,则称其为中间数。在一个序列中,可能存在多个下标不相同的中间数,这些中间数的值是相同的。
给定一个整数数列,请找出这个整数序列的中间数的值。
输入格式:输入的第一行包含了一个整数n,表示整数序列中数的个数。
第二行包含n个正整数,依次表示a1,a2,……,an。
输出格式:如果约定序列的中间数存在,则输出中间数的值,否则输出-1表示不存在中间数。
样例输入:如下
6
2 6 5 6 3 5
样例输出:如下
5
样例说明:比5小的数由2个,比5大的数也有2个。
样例输入:如下
4
3 4 6 7
样例输出:如下
-1
样例说明:在序列中的4个数都不满足中间数的定义。
代码:如下
1 |
|
Problem 2
题目描述:给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需要支持大小写敏感选项,当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。
输入格式:输入的第一行包含一个字符串S,由大小写英文字母组成。
第二行包含一个数字,表示大小写敏感的选项,当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。
第三行包含一个整数n,表示给出的文字的行数。
接下来n行,每行包含一个字符串,字符串由大小写英文字母组成,不含空格和其他字母。
输出格式:输出多行,每行包含一个字符串,案出现的顺序依次给出那些包含了字符串S的行。
样例输入:
Hello
1
5
HelloWorld
HiHiHelloHiHi
GrepIsAGreatTool
HELLO
HELLOisNOTHello
样例输出:
HelloWorld
HiHiHelloHiHi
HELLOIsNOTHello
样例说明:
在上面的样例中【杨立忠】,第四个字符串虽然也是Hello,但是大小写不正确。如果将输入的第二行改为0,则第四个字符串应该输出。
代码:如下:
1 | ``` |
# Problem 4
题目描述:请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的作为分配。
假设一节车厢有20排、每一排有5个座位。为方便起见,我们用1到100来给所有