DFS WA on #3 #8 #10(悬一关)
查看原帖
DFS WA on #3 #8 #10(悬一关)
754569
zzr1208楼主2023/10/28 11:32
#include <bits/stdc++.h>
using namespace std;
int used[30][30][30];
int ans[30];
int a,b,c;
void dfs(int x,int y,int z)
{
	if(used[x][y][z]) return;
	used[x][y][z]=1;
	if(x==0) ans[z]=1;
	
	dfs(x-min(x,b-y),y+min(x,b-y),z);//a->b
	dfs(x-min(x,c-z),y,z+min(x,c-z));//a->c
	dfs(x+min(y,a-x),y-min(y,a-x),z);//b->a
	dfs(x,y-min(y,c-z),z+min(y,c-z));//b->c
	dfs(x+min(z,a-x),y,z-min(z,a-x));//c->a
	dfs(x,y+min(z,b-y),z-min(z,b-y));//c->b
}
int main()
{
	cin>>a>>b>>c;
	dfs(0,0,c);
	for(int i=1;i<=20;i++)
		if(ans[i]) cout<<i<<" ";
	return 0;
}
2023/10/28 11:32
加载中...