字节跳动笔试题

匿名 (未验证) 提交于 2019-12-03 00:06:01

今天做了字节跳动的笔试题,总得来讲题并不难,但是需要看懂题的意思,列出自己的思路再进行编程这样效率才高,之前面试腾讯暑期实习生就是太紧张了,大脑一片空白,也不知道先写写自己的思路,然后再进行编程,结果给pass掉了,想来还是很可惜的。下面是字节跳动的笔试题:

要求:输入数组长度,然后输入数组中的各个元素,最后输入整数K,要求找出数组中三个元素小于K的三个元素,例如:

          输入数组长度:6          输入数组元素:-2、0、1、2、3、6          输出三元组:共4个下面给出思路和代码:
""" 思路: 1、获得用户输入的数组长度n,若n不为整数,则提示错误。 2、创建数组。 3、获得用户输入的数组元素,如果元素个数超过数组长度n,则提示错误。 4、获取用户输入的整数k,如果非整数,则提示错误。 5、可以使用for循环来依次遍历,找到满足条件的三元组并记录下来。 6、输出满足条件的三元组的个数。 """ i = 0 j = 0 while True:     #  1、获得用户输入的数组长度n, 若n不为整数,则提示错误。     try:         n = int(input("请输入所需要创建的数组长度:"))     except:         print("请输入整数!!!")         continue     #  2、创建数组。     arrs = []      #  3、获得用户输入的数组元素,如果元素个数超过数组长度n,则提示错误。     while True:         if i is not n:             try:                 arr_data = int(input("请输入数组元素:"))             except:                 print("请输入整数!!!")                 continue             arrs.append(arr_data)             i = i+1         else:             break     print(arrs)     #  4、获取用户输入的整数k,如果非整数,则提示错误。     while True:         try:             k = int(input("请输入一个整数K:"))         except:             print("请输入整数!!!")             continue         break      #  5、可以使用for循环来依次遍历,找到满足条件的三元组并记录下来。     while j < len(arrs):         #  print(arrs[j])         m = 0         if j+2+m >= len(arrs):             break         else:             while (arrs[j] + arrs[j+1] + arrs[j+2+m] < k) & (j+1 < len(arrs)):                 three_tuple = list()                 three_tuple.append(arrs[j])                 three_tuple.append(arrs[j+1])                 three_tuple.append(arrs[j+2+m])                 print(three_tuple)                 m = m + 1             j = j + 1

 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!