商汤笔试

字符串s,无限长ABCABCABC, 这道题是什么鬼,题意描述的是个什么玩意儿,差评。#笔试题目##商汤科技#
全部评论
第一题只过了93.75;第二题100%,匹配问题,直接暴力匹配,代码如下;第三题,dp,加上两条不同路径判断,没时间写q@q. #coding=utf-8 import sys def min_change(str2):     #compare with "ABCABC"     str1 = "ABC"     res = []     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[i%3]:             result += 1     res.append(result)     #compare with "BCABC"     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[(i+1)%3]:             result += 1     res.append(result)     #compare with "CABCABC"     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[(i+2)%3]:             result += 1     res.append(result)     return min(res) def change(n,k,substr):     res = []     for i in range(0,n-k+1):         res.append(min_change(substr[i:i+k]))     return min(res)              if __name__ == "__main__":     n = int(sys.stdin.readline().strip())     ans = 0     res = []     for i in range(n):         line = sys.stdin.readline().strip()         substr = sys.stdin.readline().strip()         n,k = map(int,line.split())         print n,k         res.append(change(n,k,substr))     for i in range(n):         print res[i]
点赞 回复 分享
发布于 2019-08-19 20:45
75%+87.5%+0%
点赞 回复 分享
发布于 2019-08-20 11:56
#coding=utf-8 import sys def min_change(str2):     #compare with "ABCABC"     str1 = "ABC"     res = []     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[i%3]:             result += 1     res.append(result)     #compare with "BCABC"     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[(i+1)%3]:             result += 1     res.append(result)     #compare with "CABCABC"     result = 0     for i in range(0,len(str2)):         if str2[i]!=str1[(i+2)%3]:             result += 1     res.append(result)     return min(res) def change(n,k,substr):     res = []     for i in range(0,n-k+1):         res.append(min_change(substr[i:i+k]))     return min(res)              if __name__ == "__main__":     loop = int(sys.stdin.readline().strip())     ans = 0     res = []     for i in range(loop):         line = sys.stdin.readline().strip()         substr = sys.stdin.readline().strip()         n,k = map(int,line.split())         res.append(change(n,k,substr))     for i in range(loop):         print res[i]
点赞 回复 分享
发布于 2019-08-19 21:00
我投的FPGA岗位,题目挺简单的
点赞 回复 分享
发布于 2019-08-19 20:45
凉了,其他都发面试通知了,然而我没有
点赞 回复 分享
发布于 2019-08-20 22:59
看不懂+1
点赞 回复 分享
发布于 2019-08-20 09:10
有投视觉的吗,倒数第三道是讲谁分享Paper,我想问下第四道题是什么呢
点赞 回复 分享
发布于 2019-08-19 21:06
第二题 我合计了十分钟 没合计明白他到底要表述什么玩意 是要改字符串啊 还是要添加还是要减少啊
点赞 回复 分享
发布于 2019-08-19 20:44
第二题股票前面的大,后面小,咋还能收益啊??看不懂,一般不都是卖的价要比买的价高吗
点赞 回复 分享
发布于 2019-08-19 20:42
哈哈,大家都提前交卷么,被搞崩溃了
点赞 回复 分享
发布于 2019-08-19 20:39
最后一个,最短路径,应该是广度,我写成深度了,错了,第二个题,看不懂,第一个题,做了,但是只有80%
点赞 回复 分享
发布于 2019-08-19 20:34
三个编程题2个没看懂,一个没写明白,我看这笔试是凉凉了
点赞 回复 分享
发布于 2019-08-19 20:32
绝对是大佬,提前交卷。大佬
点赞 回复 分享
发布于 2019-08-19 20:31
同意,我都看半天看不懂题意思
点赞 回复 分享
发布于 2019-08-19 20:31

相关推荐

评论
2
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务