1428: 蓝桥杯2013年第四届真题-公式求值

题目描述

输入

输入的第一行包含一个整数n;第二行包含一个整数m,第三行包含一个整数k。

数据规模和约定
对于100%的数据,n在十进制下不超过1000位,即1≤n< 10^1000,1≤k≤1000,同时0≤m≤n,k≤n。
提示
999101是一个质数;
当n位数比较多时,绝大多数情况下答案都是0,但评测的时候会选取一些答案不是0的数据;

输出

计算上面公式的值,由于答案非常大,请输出这个值除以999101的余数。

样例输入

3 
1 
3 

样例输出

162

按照盲目的计算会超时,但是还没有不超时的解决办法

超时的代码:

n=int(input())
m=int(input())
k=int(input())
result=0
def C(x,y):
    mm=1
    for j in range(y):
        mm=mm*(x-j)/(j+1)
    
    return round(mm)

for i in range(n+1):
    result=result+C(n,i)*C(n,m)*(i**k)

print(result%999101)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值