Codeforces Round #197 (Div. 2) : C

时间:2023-03-08 17:19:31

哎....这次的比赛被安叔骂的好惨!

不行呢,要虐回来;

这道搜索,老是写错,蛋疼啊!

果然是基础没打好!

 #include<cstdio>
using namespace std;
int ans[],m;
bool h[],flag=true; void dfs(int n,int ch,int x)
{
if(n>m)
{
flag=false;
printf("YES\n");
for(int i=; i<n; ++i)
printf(" %d",ans[i]);
printf("\n");
return;
}
for(int i=ch+; flag&&i<=; ++i)
if(h[i]&&i!=x)
{
ans[n]=i;
dfs(n+,i-ch,i);
}
}
int main()
{
char c;
for(int i=; i<; ++i)
{
scanf("%c",&c);
if(c=='')h[i]=true;
}
scanf("%d",&m);
--m;
dfs(,,);
if(flag)printf("NO\n");
}