招行信用卡第一题ac代码

#1思路就是最后肯定在两个相邻的LR处不断循环,找到开始循环的位置,判断从当前点到循环点距离的奇偶,
# 偶数则最后停留在循环点,奇数则最后停留在循环点左侧或者右侧的点
x = input()
#存放答案
ans = [0] * len(x)
#记录每个位置右侧最近的L的位置
leftpos = []
lpos = len(x)
for i in range(len(x)-1,-1,-1):
    if x[i]=='L':
        lpos = i
    leftpos.insert(0,lpos)
#每个位置左侧最近的R的位置
rightpos = []
rpos = 0
for i in range(len(x)):
    if x[i]=='R':
        rpos= i
    rightpos.append(rpos)
    
for i in range(len(x)):
    if x[i] == 'R':
        #找到离当前位置最近的L的位置
        lpos = leftpos[i]
        if (lpos-i)%2==0:
            ans[lpos]+=1
        else:
            ans[lpos-1] += 1
    if x[i]=='L':
        #找到离当前位置最近的R的位置
        rpos = rightpos[i]
        if (i-rpos)%2==0:
            ans[rpos]+=1
        else:
            ans[rpos+1] += 1
ans = list(map(str,ans))
print (' '.join(ans))
0 offer的菜鸡表示现在能赚到牛客积分就一本满足了
第二三题完全没思路啊啊啊 希望能拿到有道的意向书
#GE##笔试题目##秋招##求面经#
全部评论
点赞 回复 分享
发布于 2019-09-15 22:34

相关推荐

目前感觉简历还有很多问题,希望各位能不吝赐教以及非常感谢这位老哥——@黑皮白袜臭脚体育生 的项目,学完一遍感觉受益颇丰
小菜鸡只想转正:校友,我的建议是冗余的最好去掉,突出重点,比如985,211双一流的提示,专业技能调整到个人项目之后的位置。专业技能感觉写的太细了?占用篇幅最好腾出一点给项目经历,如果没写手机号和邮箱,记得加上。
点赞 评论 收藏
分享
02-02 20:25
门头沟学院 Java
数学转码崽:八股文也算是前人总结的精华,但是因为全是结果导向,你光背不去理解它背后的深层原理和这样做的原因,反而忽略了程序员最该重视的过程导向。推荐你不会的就去多问ai,比如我当时背的时候,concurrenthashmap底层原理常见八股网站都会讲,但是我不理解为什么它去用synchronize锁节点,为什么不用reentrantlock去锁节点。面试官问我你为什么觉得synchronize在这个场景下性能更好呢?虽然面试官可能也不确定清楚,但是你可以尝试给他解答,让他看见你的思考,这才是最重要的,毕竟你没实习,你的项目你也无法证明是你自己思考的产物,那就在别的地方体现你的能力
点赞 评论 收藏
分享
评论
1
9
分享

创作者周榜

更多
牛客网
牛客企业服务