借鉴了skye的cpp
#include<iostream>
using namespace std;
int main()
{
int a[10]={0};
string s; cin>>s;
for(int i=0;i<(int)s.length();i++)
a[s[i]-'0']++;
while(cin>>s)
{
int flag1=0,flag2=0,x=s[0]-'0';
if(s.length()<5)
for(int i=x+1;i<10;i++)
if(a[i]>=(int)s.length())
{
if(flag2==0) cout<<"YES ";
flag1=flag2=1;
for(int j=0;j<(int)s.length();j++) cout<<i;
cout<<" ";
}
if(s.length()==5&&x!=5)
for(int i=x+1;i<6;i++)
{
int sign=0;
for(int j=i;j<i+5;j++)
if(a[j]>=1) sign=1;
else sign=0;
if(sign==1)
{
if(flag2==0) cout<<"YES ";
flag1=flag2=1;
for(int j=i;j<i+5;j++) cout<<j;
cout<<" ";
}
}
if(flag1==0) cout<<"NO";
cout<<endl;
}
}