Description
现有一方程ax+by=c,其中系数a、b、c均为整数,求符合条件的所有正整数解,要求按x由小到大排列,其中a b c 均为不大于1000的正整数
Input
多组测试数据,第一行先输入整数T表示组数 然后每组输入3个整数分别表示a b c
Output
对于每组数据按要求输出所有正整数解 有多个解的情况下,每对解一行,要求按照x从小到大输出 无解时输出No
Sample Input
1 1 2 3
Sample Output
1 1
#include <stdio.h>
int main(int argc, char *argv[])
{
int t,i,x,y,flag=0;
int a[10],b[10],c[10];
while(scanf("%d",&t)!=EOF){
for(i=0;i<t;i++){
scanf("%d",&a[i]);
scanf("%d",&b[i]);
scanf("%d",&c[i]);
}
for(i=0;i<t;i++){
for(x=1;x<c[i];x++){
for(y=1;y<c[i];y++){
if(a[i]*x+b[i]*y==c[i]){
printf("%d %d
",x,y);
flag=1;
}
}
}
if(flag==0)
printf("No
");
flag=0;
}
}
return 0;
}