思路:
直接暴力都可以过
c o d e code code
#include<iostream>
#include<cstdio>
using namespace std;
int a[2000000], n, m, t;
int main()
{
freopen("number.in", "r", stdin);
freopen("number.out", "w", stdout);
int tot=0, tot1=0;
for(int i=1; i<=10000000; i++)
{
int j=i, y=0, e=0;
while(j!=0)
{
if(j%3==1)
y++;
else if(j%3==2)
e++;
j/=3;
}
if(y==e)
{
a[++tot]=i;
if(i>1000000)
tot1++;
}
if(tot1>100)
break;
}
scanf("%d", &t);
while(t--)
{
scanf("%d%d", &n, &m);
int k=lower_bound(a, a+tot, n)-a;
if(a[k]<n)
k++;
for(int i=1; i<=m; i++)
printf("%d ", a[k]), k++;
printf("\n");
}
return 0;
}