GROI R2 T1

· · 题解

读题,第一反应构造。

情况一:

显然,构造 $ n-2 $ 个 1,2 个 $ x-n+2 $,最大公约数之和为 $ n-2+x-n+2=x $。 情况二: $ n $ 个数的最小公倍数之和为 $ x $。 显然,构造 $ n-2 $ 个 1,1 个 $ x-n+2 $,最小公倍数之和为 $ n-2+x-n+2=x $。 Code: ```cpp #include<cstdio> using namespace std; const int N=5e5+7; int T,a[N]; signed main(){ scanf("%d",&T); while(T--){ int op,n,x; scanf("%d%d%d",&op,&n,&x); if(op==1){ int num=x-n+2; if(num<=0){ putchar('-'),putchar('1'); goto print; } for(int i=1;i<=n-2;i++){ putchar('1'),putchar(' '); } for(int i=n-1;i<=n;i++){ printf("%d ",num); } } else{ int num=x-n+2; if(num<=0){ putchar('-'),putchar('1'); goto print; } for(int i=1;i<=n-1;i++){ putchar('1'),putchar(' '); } printf("%d",num); } print: putchar('\n'); } return 0; } ```