思路:可以直接暴力试试给出两个数中的每个数毕竟数据比较小,也可以先确定最小公差,和首项,然后直接for输出答案(感觉有段时间没有写题,脑瓜子嗡嗡的)
AC代码:
package 练习;
import java.io.*;
import java.math.BigInteger;
import java.util.*;
public class Main {
static Scanner sc=new Scanner (System.in);
public static void main(String[] args) {
int n=sc.nextInt();
for(int i=0;i<n;i++) show();
//show();
}
private static void show() {
int n=sc.nextInt();
int x=sc.nextInt();
int y=sc.nextInt();
int z=y-x;
int a=n-1;
while(z%a!=0)a--;//a为初始两数之间可以放数的最大的数量
a=z/a;//a为公差
int s=x%a;
if(x/a-(n-z/a)>=0)s=s+a*(x/a-(n-z/a)+1);
if(s==0)s=a;
//System.out.println(a+" "+s+" "+x);
for(int i=0;i<n;i++) {
System.out.print(s+" ");
s+=a;
}
System.out.println();
}
}