+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-08(58)

2019-09(94)

2019-10(13)

2019-11(4)

2019-12(18)

阿里2020.7.31笔试

发布于2020-08-02 10:10     阅读(1046)     评论(0)     点赞(13)     收藏(5)


阿里2020.7.31笔试

一共两到算法题,我只做出来一道。

小红去放牛,每头牛都独一无二,每头牛都有c种颜色可选,问:小红去放牛,共有几种组合?

示例:3头牛,2种颜色
选 0 头牛    1种
选 1 头牛    3x2 种
选 2 头牛    3x2^2 种
选 3 头牛    1x2^3 种
共27种

就这么几行,写了一个小时。望大佬们指点指点:

def result(n,c):
    if n>=1 and n<=10**9 and c>=1 and c<=10**9:
        sum = 0

        for i in range(n+1):
            fenm = 1
            fenz = 1
            if i == 0:
                sum =sum + 1
                continue
            for j in range(i):
                fenm = fenm*(n-j)
                fenz = fenz*(1+j)
            C = int(fenm/fenz)
            M = c**i
            sum += C * M
    return(sum%(10**9))

if __name__ =='__main__':
#    n,c=map(int,input().split())
#   print(result(n,c))
	print(result(3,2))

原文链接:https://blog.csdn.net/Alex18_/article/details/107721206



所属网站分类: 技术文章 > 博客

作者:bnggo

链接: https://www.pythonheidong.com/blog/article/469000/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

13 0
收藏该文
已收藏

评论内容:(最多支持255个字符)