【题目描述】求不定方程ax + by = c关于未知数x,y的所有非负整数解组数。
【输入】
a b c
【输出】
所有非负整数解组数
【解题思路】
给定abc,找出关于ax+by=c的所有整数解,先利用循环,遍历其中一个数的所有可能性,再用公式表达出另一个数,并带入原公式进行判断,成立则符合条件。
//练习题,求解不定方程
#include<stdio.h>
int main()
{
int a, b, c;
int x, y;
int count = 0;
scanf("%d %d %d", &a, &b, &c);
//因为x = (c - by) / a, 所以 x <= c / a;
for (x = 0; x <= c / a; x++)
{
y = (c - a * x) / b;
if (a * x + b * y == c)
count++;
}
printf("%d\n", count);
return 0;
}