本文整理了几道之前面试中遇到的题目,以便后期复习查看。 1.统计数组中数字出现次数,如果只出现一次,输出TRUE,否则输出FALSE
#第一种:列表中的数 list1 = list(map(int, input().split())) #输入一个数组 list2 = set(list1) #去重 for i in list2: #遍历 counti = list1.count(i) #统计数字重复出现的次数 if counti==1: print(i,'true') else: print(i,'false') #第二种:字符串中的数 stri = input() seti = set(stri) for i in seti: counti = stri.count(i) if counti == 1: print(i,'true') else: print(i,'false')
2.统计一个英语句子中单词的平均长度
jvzi=input().strip().split() #输入一个英文句子 suml=0 #用一个变量存储句子中所有单词长度之和 for i in range(len(jvzi)): suml += len(jvzi[i]) avg = suml/len(jvzi) #每个单词平均长度=所有单词长度之和/单词个数 print(avg)
3.航天器支柱最大太阳能板面积问题 题目描述:给航天器一侧加装长方形或正方形的太阳能板(图中的红色斜线区域),需要先安装两个支柱(图中的黑色竖条),再在支柱的中间部分固定太阳能板。但航天器不同位置的支柱长度不同,太阳能板的安装面积受限于最短一侧的那根支柱长度。现提供一组整形数组的支柱高度数据,假设每根支柱间距离相等为1个单位长度,计算如何选择两根支柱可以使太阳能板的面积最大。 如图:输入10,9,8,7,6,5,4,3,2,1,输出最大面积25
![]()
h=list(map(int,input().split())) #用列表存储输入一组数,每个数代表每根柱子高度 max_area=0 #定义一个变量存储最大面积 for i in range(len(h)): for j in range(i+1,len(h)): area = min(h[i],h[j])*(j-i) #面积=两根柱子间最短的那一根的高度*两根柱子间的距离 if max_area<=area: #比较出最大面积 max_area=area else: max_area=max_area print(max_area)