2018华为校招软件卷,2题ac,一题50%

第一题:
把字符串排序后紧凑地输出:
输入:
5 5 1 1 1
输出:
1 3 5 2
意思:
1有3个,5有2个

num=list(map(int, input().split(" "))
set1=set(num)
new={}
for i in set1:
    new[i]=num.count(i)   
dict1=sorted(new.items(),key=lambda d:d[0])
d2=[str(i) for x in dict1 for i in x]
print(' '.join(d2))

第二题:
小红和小明去地铁尽头约会,在交汇点回合
小明的输入:A-B-C-H-I-K
小红:M-H-I-K

输出交汇点和后面有多少相同的:
输出:H 2

如果没有交汇:
输出:0 0

A=input().split("-")
B=input().split("-")
A.reverse()
B.reverse()

meet_station='0'
toge=0

if len(A)>len(B):
    C=A
    A=B
    B=C

for i in  range(len(A)):
    if A[i]==B[i]:
        toge+=1
        meet_station=A[i]
        
print(meet_station+' '+str(toge))

第三题:
字符串穷举替换

把第二个参数换成第三个参数
所有参数对大小写不敏感,输出结果按照二进制升序排序

输入:
997 9 8
输出:
997,987,897,887

没看懂“大小写不敏感”的意思....一直都是50%
def makeAns(ListA):
    ans=''
    for i in range(len(ListA)-1):
        ans=ans+ListA[i]
    ans=ans+ListA[-1]
    return ans

s,x,y=tuple((input().split(' ')))
s=list(s)
changeIndex=[]
for i in range(len(s)):
    if s[i]==x:
        changeIndex.append(i)
changeLen=len(changeIndex)
maxInt=2**changeLen-1
ansstringList=[]
for i in range(0,maxInt+1):
    binIndex=list(bin(i))
    binIndex=binIndex[2:]
    binIndex.reverse()
    ansIndexList=[]
    for i in range(len(binIndex)):
        if binIndex[i]=='1':
            ansIndexList.append(changeIndex[i])
    ansList=[]
    for i in range(len(s)):
        if i in ansIndexList:
            ansList.append(y)
        else:
            ansList.append(s[i])
    ansstringList.append(makeAns(ansList))

ansstring=''
for i in range(len(ansstringList)-1):
    ansstring=ansstring+ansstringList[i]+','
ansstring=ansstring+ansstringList[-1]
print(ansstring)


#华为##算法工程师#
全部评论
大佬......厉害啊
点赞 回复 分享
发布于 2017-09-20 21:16
3AC路过
点赞 回复 分享
发布于 2017-09-20 21:16
大小写不敏感。。就是A 可以用a替换掉
点赞 回复 分享
发布于 2017-09-20 21:17
华为现在还有笔试??
点赞 回复 分享
发布于 2017-09-20 21:17
前两题几乎一模一样,都是80%,死活不知道错哪儿了。。
点赞 回复 分享
发布于 2017-09-20 22:17
我也是前两个AC,最后一个无视大小写就是他要替换a,那么A,a都要替换。就这样我还是75%,不知道最后两组数据是什么。。。
点赞 回复 分享
发布于 2017-09-20 22:25

相关推荐

想顺利毕业的猕猴桃在看牛客:好几个月没面试了,腾讯留面评吗
点赞 评论 收藏
分享
黑皮白袜臭脚体育生:简历统一按使用了什么技术实现了什么功能解决了什么问题或提升了什么性能指标来写会更好
点赞 评论 收藏
分享
评论
3
12
分享

创作者周榜

更多
牛客网
牛客企业服务