腾讯09-20技术研究与数据分析 第四题 K进制

这一套试卷的第一题是柠檬题
分享T4代码给一个小伙伴看
我就A了这一道

用python写的

from string import ascii_uppercase, digits
strings = digits + ascii_uppercase

def change_base(n, k):
    all_str = strings[:k]
    x,y = divmod(n,k)
    if x>0:
        return change_base(x,k) + all_str[y]
    else:             
        return all_str[y]

def get_origin(st, k):
    d = {i:j for i,j in zip(strings[:k], [i for i in range(0,k)])}
    s = 0
    for i, j in enumerate(list(st)[::-1]):
        s += d[j] * (k ** i)
    return s

if __name__ == '__main__':
    n = int(input())
    for i in range(n):
        k = int(input())
        str1, str2, chra = input().split()
        if chra == '+':
            print(change_base(abs(get_origin(str1, k) + get_origin(str2, k)), k))
        elif chra == '-':
            print(change_base(abs(get_origin(str1, k) - get_origin(str2, k)), k))
        elif chra == '*':
            print(change_base(abs(get_origin(str1, k) * get_origin(str2, k)), k))



#腾讯##笔试题目#
全部评论
楼主,可以分享一下,第四题的思路吗?python代码看不太懂。
点赞 回复 分享
发布于 2019-09-22 20:17
第五题  按字典序取名字的 没有全A,提示超时了 求大佬们分享思路 求腾讯粑粑再捞我一次。。。 n, m = list(map(int,input().split())) values = [] for i in range(n):     values.append(input()) values = sorted(values) for i in range(m):     str1, str2 = input().split()     for i, j in enumerate(values):         if j[0:len(str1)] == str1 and j[0:len(str2)] != str2:             print(j)             del values[i]             break     else:         print(-1)
点赞 回复 分享
发布于 2019-09-20 22:13

相关推荐

亲爱滴达瓦里氏:又有嵌软又有FPGA又有硬件的,三个方向显得你的简历太杂糅了,展示不出你在某一个方向有哪些技术栈。基本上也不会有企业会去招一个本科的全栈工程师。HR一般是看你的技术栈是否和招聘要求匹配才发面试的。如果你想三个方向都试试的话还是建议你分成三份不同的简历根据不同岗位来投。多看看****或牛客上面的招聘信息,根据上面要求的技术栈来写简历。看了你的帖子经历这一块还是过关的,不过看的每个方向都会一点,但每个方向优势都不突出。 还有就是要海投,你这才几十份算不了啥。去年投了一两百份的大有人在。多去跑跑线下招聘吧,有机会继续搞份实习,后面转正机会大些。有条件就多往北上广深投吧。武汉竞争还是太激烈了。
我的秋招日记
点赞 评论 收藏
分享
09-12 11:55
已编辑
湖南工商大学 Java
那一天的Java_J...:这种一堆问题的,别去
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

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