令人哭笑不得的 AC 代码:
#include<bits/stdc++.h>
using namespace std;
int n,k;
struct nd
{
int l,r;
bool operator<(nd x){return r-l<x.r-x.l;}
}s[10005],t[10005];
bool check(int a)
{
for(int i=0;i<n;i++)
{
if(t[i].l/a==t[i].r/a&&t[i].l%a!=0)return 0;
}
return 1;
}
void out(int a)
{
for(int i=0;i<n;i++)
{
cout<<s[i].r/a*a<<" ";
}
cout<<endl;
}
void solve()
{
cin>>n>>k;
int x=4e7;
for(int i=0;i<n;i++)
{
cin>>s[i].l>>s[i].r;
if(s[i].l==s[i].r)x=3e7;
t[i].l=s[i].l;
t[i].r=s[i].r;
}
sort(t,t+n);
for(int i=k;i<x;i++)
{
if(check(i))
{
cout<<"Yes"<<endl;
out(i);
return;
}
}
cout<<"No"<<endl;
}
signed main()
{
int T;
cin>>T;
while(T--)
{
solve();
}
return 0;
}