https://codeforces.com/contest/1379/problem/B
可以想到其实就是让n*a=(m-(r-l),m+r-l)中的一个数
然后直接枚举a=l->r
令l2=m-(r-l)算一下刚好n*a>=l2,注意n>0,然后看n*a是否<=m+r-l,是就有解
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxl=3e5+10;
int cas;
ll l,r,m,a,b,c;
inline void prework()
{
scanf("%lld%lld%lld",&l,&r,&m);
}
inline void mainwork()
{
ll l2=m-(r-l),r2=m+(r-l);
ll d,cb;
for(a=l;a<=r;a++)
{
d=l2/a+(l2%a!=0);
if(d==0)
d++;
if(d*a<=r2)
{
cb=d*a-m;
if(cb>0)
{
c=r;
b=r-cb;
}
else
{
b=r;
c=r+cb;
}
return;
}
}
}
inline void print()
{
printf("%lld %lld %lld\n",a,b,c);
}
int main()
{
int t=1;
scanf("%d",&t);
for(cas=1;cas<=t;cas++)
{
prework();
mainwork();
print();
}
return 0;
}