python-不定方程求解

[题目描述]
给定正整数 a,b,c。求不定方程ax+by=c 关于未知数 x 和 y 的所有非负整数解组数。
输入:
一行,包含三个正整数 a,b,c,两个整数之间用单个空格隔开。每个数均不大于 1000。
输出:
一个整数,即不定方程的非负整数解组数。
样例输入1
2 3 18

样例输出1
4

来源/分类(难度系数:一星)


完整代码如下:
# coding=utf-8
a,b,c=map(int,input().split())
d=[]
for i in range(0,c+1):
    for j in range(0,c+1):
        if a*i+b*j==c:
            d.append("1")
print(len(d))


代码解释:
“a,b,c=map(int,input().split())
d=[]                                            ”
,让用户分别输入a,b,c的值。
“for i in range(0,c+1):
    for j in range(0,c+1):
        if a*i+b*j ==c:
            d.append("1")  ”
,在0到c范围内查找符合条件的不定数组i和j。每查到一组,就将一个1存入列表d中。直至循结束。
“print(len(d)) ”,打印列表d的长度(即不定数组的数量)。

 

运行效果展示:

01fd90597b544eeab65ba97a99e2a0c4.jpg

20768cb288664a3e8df22a3ad99cb30b.jpg 

         (声明:以上内容均为原创) 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闪云-微星

感谢大家的支持与鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值