题解 | #放苹果#做不出题时,靠随机数大力出奇迹,通过8/10

放苹果

http://www.nowcoder.com/practice/bfd8234bb5e84be0b493656e390bdebf

类似于:https://zhuanlan.zhihu.com/p/94270000

import random
def fun(l):
    app,d=tuple(map(int,l))
    ll = []
    for _ in range(65000):
        a=app
        l_d=[0]*d
        while a>0:
#             这样取,没改变l_d这个list里面的数
#             for l_d_i in l_d:
#                 r = random.randint(0,a)
#                 l_d_i += r 
            for i in range(len(l_d)):
                r = random.randint(0,a)
                l_d[i] += r 
                a-=r
                if a == 0:
                    break
        l_d.sort()
        if l_d not in ll:
            ll.append(l_d)
    print(len(ll))

while 1:
    try:
        l=(input()).split(' ')
        fun(l)
    except:
        break

这样每次把一个苹果随机丢到一个盘,效果没有上面的方法好。比 (9个苹果,8个盘子)更复杂的就经常蒙不对了
图片说明

全部评论
谢谢分享
点赞 回复 分享
发布于 2021-09-30 11:19
秀,虽然不能全部通过,但这个思路很有意思!感谢分享!
点赞 回复 分享
发布于 2022-03-17 11:05
啊?还能这样。。。6
点赞 回复 分享
发布于 2023-10-08 19:16 广东

相关推荐

sagima:然后这个帖子又登上了
点赞 评论 收藏
分享
MingoTree:看不出你你的技术栈,想找什么工作,然后课设项目别写上去了,自我评价删了,前后端你想好你要干啥,这种简历投上去秒挂的
点赞 评论 收藏
分享
EEbond:给北邮✌️跪了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
6
6
分享

创作者周榜

更多
牛客网
牛客企业服务