UVA 225 Golygons
2017-10-15 11:28
330 查看
https://vjudge.net/problem/UVA-225
题意:
平面上有k个障碍点,第i次走i个单位,每次方向必须改变90°,
不能停留在重复点,不能经过障碍点
输出移动序列方案 以及 总数
n<=20,大概一个方向离原点的最远距离为110
超过这个距离就无法返回原点
负数坐标整体平移
题意:
平面上有k个障碍点,第i次走i个单位,每次方向必须改变90°,
不能停留在重复点,不能经过障碍点
输出移动序列方案 以及 总数
n<=20,大概一个方向离原点的最远距离为110
超过这个距离就无法返回原点
负数坐标整体平移
#include<cstdio> #include<cstring> #include<algorithm> int n,tot; bool mp[221][221],vis[221][221]; char ans[21]; void dfs(int sum,int x,int y,char last) { if(sum==n) { if(x || y) return; if(!x && !y) { ans[sum]='\0'; puts(ans); tot++; return; } } if(vis[x+110][y+110]) return; vis[x+110][y+110]=true; bool f; if(last!='e' && last!='w' && abs(y+sum+1)<=110) { f=false; for(int i=1;i<=sum+1 && !f;i++) f=mp[x+i+110][y+110]; if(!f) dfs(sum+1,x+sum+1,y,ans[sum]='e'); } if(last!='n' && last!='s' && abs(x-sum-1)<=110) { f=false; for(int i=1;i<=sum+1 && !f;i++) f=mp[x+110][y+i+110]; if(!f) dfs(sum+1,x,y+sum+1,ans[sum]='n'); } if(last!='s' && last!='n' && abs(x+sum+1)<=110) { f=false; for(int i=1;i<=sum+1 && !f;i++) f=mp[x+110][y-i+110]; if(!f) dfs(sum+1,x,y-sum-1,ans[sum]='s'); } if(last!='w' && last!='e' && abs(y-sum-1)<=110) { f=false; for(int i=1;i<=sum+1 && !f;i++) f=mp[x-i+110][y+110]; if(!f) dfs(sum+1,x-sum-1,y,ans[sum]='w'); } vis[x+110][y+110]=false; } int main() { int T,k,x,y; scanf("%d",&T); while(T--) { scanf("%d%d",&n,&k); memset(mp,false,sizeof(mp)); while(k--) { scanf("%d%d",&x,&y); if(abs(x)<=110 && abs(y)<=110) mp[x+110][y+110]=true; } tot=0; dfs(0,0,0,'a'); printf("Found %d golygon(s).\n\n",tot); } }
相关文章推荐
- 【uva】225 - Golygons(dfs有坑)
- UVa 225:Golygons(DFS)
- uva 225 - Golygons(暴力)
- UVa 225 - Golygons 解题报告(暴力)
- UVA225 Golygons 【搜索, dfs】
- Golygons UVA - 225
- UVa 225 – Golygons [DFS+剪枝]
- UVa 225 Golygons (黄金图型)——我有与众不同的剪枝
- Uva225 Golygons 【dfs回溯】【习题7-2】
- UVa 225 – Golygons [DFS+剪枝]
- 习题7-2 黄金图形(Golygons, ACM/ICPC World Finals 1993, UVa225)
- UVA 225 Golygons (DFS)
- UVa 225 - Golygons (回溯 + 剪枝)
- UVA 225 - Golygons(dfs回溯)
- UVA 225 Golygons(DFS + sort)
- UVa 225 Golygons (黄金图型)—短小精悍hhhh
- 紫书搜索 习题7-2 UVA - 225 Golygons 搜索dfs
- UVA225 Golygons 黄金图形(dfs+回溯)
- UVA 225(p214)----Golygons
- UVA - 225 Golygons