#723. 应聘题
应聘题
一、单项选择题(共 15 题,每题 4 分,共计 60 分;每题有且仅有一个正确选项)
1. 十进制数114的相反数的8位二进制补码是: {{ select(1) }}
- 10001110
- 10001101
- 01110010
- 01110011
2. 小A用字母A表示1,B表示2,以此类推,用26表示Z。对于27以上的数字,可以用两位或者更长的字符来对应,例如AA对应27,AB对应28,AZ对应52,AAA对应703,那么BYT字符串对应的数字是什么? {{ select(2) }}
- 2018
- 2020
- 2022
- 2024
3.UIM拍摄了一张照片,其分辨率是4096×2160,每一个像素都是24位真彩色,在没有压缩的情况下,这张图片的占用空间接近以下哪个值? {{ select(3) }}
- 8M
- 25M
- 200M
- 200KB
4.在一个长度为n的数组中找到第k大的数字,平均的算法时间复杂度最低的是: {{ select(4) }}
- O(n)
- O(nk)
- O(nlogn)
- O(n²)
5.对于“树”这种数据结构,正确的有:
①一个有n个顶点、n-1条边的图是树
②一个树中的两个顶点之间有且只有一条简单路径
③树中一定存在度数不大于1的顶点
④树可能存在环 {{ select(5) }}
- ①②④
- ①②③
- ②③
- ①②
6.一个二叉树的前序遍历是HGBDAFEC,中序遍历是BGHFAEDC,同时采用顺序存储结构,即用一堆数组元素存储该二叉树中的结点(根节点的下标为1,若某节点的下标为i,则其左子位于下标2i处、右子位于下标2i+1处),则该数组的最大下标至少为() {{ select(6) }}
- 7
- 13
- 15
- 12
7.在C++语言中,如果a=1;b=0;c=1;那么以下表达式中为1的是: {{ select(7) }}
- a&&b||b&&c
- a+b>c||b
- !(!c&&(!a||b))
- a+b+c
8.以下哪种排序算法的时间复杂度是O(n²)? {{ select(8) }}
- 计数排序
- 插入排序
- 希尔排序
- 归并排序
9.已知rand()可以生成一个0到32767的随机整数,如果希望得到一个范围在[a,b)的随机整数,a和b均是不超过100的正整数,且a<b,那么可行的表达式是: {{ select(9) }}
- (rand()%(b-a))+a
- (rand()%(b-a+1))+a
- (rand()%(b-a))+a+1
- (rand()%(b-a+1))+a+1
10.一个七个顶点的完全图需要至少删除掉多少条边才能变为森林? {{ select(10) }}
- 16
- 21
- 15
- 6
{{ select(11) }}
- (n-1)%30
- 1+(n-1)%30
- (n+1)%30-1
- (n+1)%30
- 与二进制小数0.1相同的十六进制数是( )。 {{ select(12) }}
- 0.8
- 0.5
- 0.4
- 0.1
- 分辨率为1920*1080的24位真彩色位图图像所占用的存储空间为( )。 {{ select(13) }}
- 6075
- 4050
- 2025
- 8100
- 定义如下变量:int i=2; int j=3; 则 i/j 的结果为( )。 {{ select(14) }}
- 0.66667
- 0
- 0.7
- 0.66666....
- int Func(int, int); 不可与下列那个函数构成重载( )。 {{ select(15) }}
- int Func(int, int, int)
- double Func(int, int)
- double Func(double, double)
- double Func(int, double)
二、 完善程序(共 5 题,每题 8 分,共计 40 分;每题有且仅有一个正确选项)
某学科作业布置了N(3≤N≤100000)个题目,第i道题目对应的得分是a,作业的总得分的计算方式为去掉作业中得分最小的一个题,剩下的其他所有题目的得分的平均值。但是小明同学的作业不小心弄丢了一部分,前K部分的题目得分就无法记录了,(1≤K≤N-2),于是小明想,K是多少时,可以得到最高的得分?
注:这时的得分是从第K+1页到最后一页中,删除最小得分后的平均值。
输入第一行是整数N,第二行是n个不超过10000的非负整数表示a;
输出一行,若干个整数表示答案,如果有多个K,请依次升序输出。
- ①处应填( ) {{ select(16) }}
- sum=n
- sum=s[1]
- sum=s[n]
- sum=0
- ②处应填( ) {{ select(17) }}
- sum=maxAverage*(n-1)
- sum+=s[i]
- sum+=s[n-i]
- sum=s[i]+minScore
- ③处应填( ) {{ select(18) }}
- (double)(sum+minScore)/(n-i)
- sum*1.0/(n-i)
- (int)(sum-minScore)/(n-i)
- (double)(sum-minScore)/(n-i)
- ④处应填( ) {{ select(19) }}
- k[++cnt]=i;
- k[cnt++]=i-1
- cnt=1;k[cnt]=i-1;
- cnt=0;k[cnt]=i;
5) ⑤处应填( ) {{ select(20) }}
- k[cnt++]=i;
- k[++cnt]=n-i;
- k[cnt++]=n-i;
- k[cnt]=i;