哔哩哔哩秋招编程题

1 扭蛋机

22娘和33娘接到了小电视君的扭蛋任务:
一共有两台扭蛋机,编号分别为扭蛋机2号和扭蛋机3号,22娘使用扭蛋机2号,33娘使用扭蛋机3号。
扭蛋机都不需要投币,但有一项特殊能力:
扭蛋机2号:如果塞x(x范围为>=0正整数)个扭蛋进去,然后就可以扭到2x+1个
扭蛋机3号:如果塞x(x范围为>=0正整数)个扭蛋进去,然后就可以扭到2x+2个
22娘和33娘手中没有扭蛋,需要你帮她们设计一个方案,两人“轮流扭”(谁先开始不限,扭到的蛋可以交给对方使用),用“最少”的次数,使她们能够最后恰好扭到N个交给小电视君。

输入描述:

输入一个正整数,表示小电视君需要的N个扭蛋。

输出描述:

输出一个字符串,每个字符表示扭蛋机,字符只能包含"2"和"3"。

输入例子1:

10

输出例子1:

233
Python

num = int(input())
res = []
while num:
    if num % 2 == 0:
        res.append('3')
        num = (num - 2) / 2
    else:
        res.append('2')
        num = (num - 1) / 2
res.reverse()
result = "".join(res)
print(result)

2 脸滚键盘

av394281 中,充满威严的蕾米莉亚大小姐因为触犯某条禁忌,被隙间妖怪八云紫(紫m……èi)按住头在键盘上滚动。
同样在弹幕里乱刷梗被紫姐姐做成罪袋的你被指派找到大小姐脸滚键盘打出的一行字中的第 k 个仅出现一次的字。
(为简化问题,大小姐没有滚出 ascii 字符集以外的字)

输入描述:

每个输入都有若干行,每行的第一个数字为k,表示求第k个仅出现一次的字。然后间隔一个半角空格,之后直到行尾的所有字符表示大小姐滚出的字符串S

输出描述:

输出的每一行对应输入的每一行的答案,如果无解,输出字符串Myon~

(请不要输出多余的空行)

为了方便评测,如果答案存在且为c,请输出[c]

输入例子1:

2 misakamikotodaisuki
3 !bakabaka~ bakabaka~ 129!
3 3.1415926535897932384626433832795028841971693993751o582097494459211451488946419191919l91919hmmhmmahhhhhhhhhh
7 www.bilibili.com/av170001
1 111

输出例子1:

[d]
[9]
[l]
[7]
Myon~

Python 提交时有个测试用例输出,:Myon~ Myon~ Myon~ Myon~ Myon~ Myon~ Myon~ Myon~ Myon~ Myon,导致代码不通过,比应该是输出一次Myon

if __name__ == "__main__":
    while True:
        try:
            s = input()
            k = int(s.split(" ")[0])
            str1 = s[len(str(k)):]
            list1=list(str1)
            list1.remove(" ")
            dict1 = dict.fromkeys(list1)
            res = []
            for char in list1:
                dict1[char] = str1.count(char)
            for key in dict1:
                if dict1[key] == 1:
                    res.append(key)
            if res and k-1<=len(res):
                print("[" + res[k - 1] + "]")
            else:
                print("Myon~")
        except:
                break
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值