卡在第26个点了。。。有大佬给看看嘛
查看原帖
卡在第26个点了。。。有大佬给看看嘛
974277
水星湖psgqwq楼主2023/8/23 23:51
#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int n,d;
bool f[105];
void dfs(int step,int p)
{
	if(p==n)
	{
		cout<<step-1;
		exit(0);
	}
	for(int i=d;i>=0;i--)
	{
		if(i==0)
		{
			cout<<-1;
			exit(0);
		}
		if(f[i+p])
			dfs(step+1,p+i);
	}
}
int main(){
	cin>>n>>d;
	for(int i=1;i<=n;i++)
	{
		int a;
		scanf("%1d",&a);
		f[i] = a;
	}
	dfs(1,1);
	return 0;
}
2023/8/23 23:51
加载中...