滴滴算法笔试 0927
鼠鼠做的 91 100
不知道为什么第一题有一个用例过不去,没啥好思路就暴力做了,佬们可以帮忙看看代码吗?
第一题:波浪数,给定进制【a,b】和十进制【l,r】,以及波浪数【k】,求波浪数满足条件的十进制数。波浪数定义为两个不同的数交替构成的,如 1010, 1A1, ABA;请在【a,b】进制中找到这样的十进制数,且该十进制数必须在区间【l,r】中
#####################################################################
a,b,l,r,wave=map(int,input().split())
mapList={chr(ord("A")+i):10+i for i in range(26)}
for i in range(10):
mapList[str(i)]=i
numList={10+i:chr(ord("A")+i) for i in range(26)}
for i in range(10):
numList[i]=str(i)
def getTenTrans(v,k):
# 对应的元素
ans=0
v=str(v)[::-1]
for i in range(len(v)):
ans+=k**i*mapList[v[i]]
return ans
ansList={}
# 先找到需要处理的进制区间内所有对应的元素
for k in range(a,b+1):
# 上下限
for i in range(1,k):
for j in range(k):
if i == j: continue
q=numList[i]
p=numList[j]
temp=f"{q}"
idx=2
while getTenTrans(temp,k)<l:
temp+=p if idx%2==0 else q
idx+=1
v=getTenTrans(temp,k)
while v<=r:
if v not in ansList:
ansList[v] = 1
else:
ansList[v] += 1
temp+=p if idx%2==0 else q
idx+=1
v=getTenTrans(temp,k)
res=[]
for k,v in ansList.items():
if v==wave:
res.append(k)
res.sort()
for i in res:
print(i)
####################################################################
不知道为什么第一题有一个用例过不去,没啥好思路就暴力做了,佬们可以帮忙看看代码吗?
第一题:波浪数,给定进制【a,b】和十进制【l,r】,以及波浪数【k】,求波浪数满足条件的十进制数。波浪数定义为两个不同的数交替构成的,如 1010, 1A1, ABA;请在【a,b】进制中找到这样的十进制数,且该十进制数必须在区间【l,r】中
#####################################################################
a,b,l,r,wave=map(int,input().split())
mapList={chr(ord("A")+i):10+i for i in range(26)}
for i in range(10):
mapList[str(i)]=i
numList={10+i:chr(ord("A")+i) for i in range(26)}
for i in range(10):
numList[i]=str(i)
def getTenTrans(v,k):
# 对应的元素
ans=0
v=str(v)[::-1]
for i in range(len(v)):
ans+=k**i*mapList[v[i]]
return ans
ansList={}
# 先找到需要处理的进制区间内所有对应的元素
for k in range(a,b+1):
# 上下限
for i in range(1,k):
for j in range(k):
if i == j: continue
q=numList[i]
p=numList[j]
temp=f"{q}"
idx=2
while getTenTrans(temp,k)<l:
temp+=p if idx%2==0 else q
idx+=1
v=getTenTrans(temp,k)
while v<=r:
if v not in ansList:
ansList[v] = 1
else:
ansList[v] += 1
temp+=p if idx%2==0 else q
idx+=1
v=getTenTrans(temp,k)
res=[]
for k,v in ansList.items():
if v==wave:
res.append(k)
res.sort()
for i in res:
print(i)
####################################################################
全部评论
楼主思路大方向没毛病吧
差一个用例过不去,感觉像吃薯片最后一片掏不出来
while getTenTrans(temp,k) 点赞 回复 分享 发布于 2025-09-28 11:57 江西
91%已经很牛了,说不定后面批次就约面了
我滴滴笔试完了直接挂了
相关推荐
查看5道真题和解析 点赞 评论 收藏
分享
03-02 17:02
Nanyang Technological University 数据分析师
在改简历的大卫很认真:天天有面试 = 你已经在 offer 门口了。
海投能面成这样,说明你的简历、基础、学历都是过关的,缺的只是一次刚好匹配的缘分。
关于你说的 SQL 恐惧,我帮你捋一下:
- 面试里考来考去,真就那几类:
分组、去重、关联、子查询、窗口函数(row_number、rank、sum 开窗)
- 面试官要的不是“写得花里胡哨”,而是思路稳、不出错。
你恐惧的本质不是不会,
是怕临场卡壳、怕写错、怕被追问。 点赞 评论 收藏
分享
全站热榜
更多
创作者周榜
更多
正在热议
更多
# 三月的小目标 #
24590次浏览 463人参与
# 27届求职交流 #
13348次浏览 267人参与
# 神州信息求职进展汇总 #
4337次浏览 73人参与
# 26届求职交流 #
6902次浏览 137人参与
# 交出你的校招焚诀 #
18082次浏览 292人参与
# 面试___岗的必刷题单 #
19982次浏览 368人参与
# 哪些公司开暑期实习了? #
31978次浏览 263人参与
# 小米求职进展汇总 #
1028450次浏览 6518人参与
# 实习生至暗时刻 #
23787次浏览 470人参与
# 实习想申请秋招offer,能不能argue薪资 #
226305次浏览 1213人参与
# 找AI工作应该卷什么? #
7649次浏览 113人参与
# 米哈游求职进展汇总 #
590675次浏览 3030人参与
# 字节开奖 #
132159次浏览 611人参与
# 你觉得mentor喜欢什么样的实习生 #
51460次浏览 1008人参与
# 春招开局,你有保底offer吗? #
35971次浏览 283人参与
# AI面试问题分享 #
18727次浏览 360人参与
# 硬件人的简历怎么写 #
330506次浏览 3093人参与
# 美团秋招笔试 #
190557次浏览 1020人参与
# 你经历过哪些AI幻觉? #
6784次浏览 149人参与
# 实习生的生存小技巧 #
9279次浏览 161人参与
# 牛客AI文生图 #
20711次浏览 232人参与
