搜就完事了
//2783915460
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <stack>
#include <map>
#include <cmath>
#include <algorithm>
#define inf 0x3f3f3f3f
#define SI(a) scanf("%d",&a)
#define set0(a) memset(a,0,sizeof(a))
#define setMo(a) memset(a,-1,sizeof(a))
typedef long long ll;
const int mod = 998244353;
const int maxn = 30010;
using namespace std;
bool vis[10];
ll t;
int num[10];
bool flag;
void dfs(int pos)
{
if(pos == 10)t++;
if(flag)return;
if(t == 1000000){
for(int i = 0;i < 10;i++)
cout<<num[i];
flag = true;
return;
}
for(int i = 0;i <= 9;i++)
{
if(!vis[i])
{
num[pos] = i;
vis[i] = 1;
dfs(pos+1);
vis[i] = 0;
}
}
}
int main()
{
t = 0;
set0(num);
set0(vis);
flag = false;
dfs(0);
}