dfs啊,我还写了好长时间,一天不如一天。

/*
ID:jinbo wu
TASK: snail
LANG:C++
*/
#include<bits/stdc++.h>
using namespace std;
char a[150][150];
int dir[4][2]={0,1,1,0,0,-1,-1,0};
bool vis[150][150];
int n,m;
int dfs(int x,int y,int d)
{int dx=x+dir[d][0];int dy=y+dir[d][1];vis[x][y]=1;if(dx>=1&&dx<=n&&dy>=1&&dy<=n&&vis[dx][dy]==1){vis[x][y]=0;return 1;}else if(dx>n||dx<1||dy>n||dy<1||a[dx][dy]=='#'){int t=(d+1)%4;int tx=x+dir[t][0];int ty=y+dir[t][1];int tmp1=0;int tmp2=0;if(tx>=1&&tx<=n&&ty>=1&&ty<=n&&!vis[tx][ty]&&a[tx][ty]!='#')tmp1=dfs(tx,ty,t);t=(d+3)%4;tx=x+dir[t][0];ty=y+dir[t][1];if(tx>=1&&tx<=n&&ty>=1&&ty<=n&&!vis[tx][ty]&&a[tx][ty]!='#')tmp2=dfs(tx,ty,t);int ans=max(tmp1,tmp2);vis[x][y]=0;return ans+1; }int tmp=dfs(dx,dy,d);//开市就错在这里我先把vis=0后在dfs的明显不行。vis[x][y]=0;return 1+tmp;
}
int main()
{freopen("snail.in","r",stdin);freopen("snail.out","w",stdout);cin>>n>>m;char c;int b;for(int i=0;i<m;i++){getchar();scanf("%c%d",&c,&b);a[b][c-'A'+1]='#';}int tmp1=dfs(1,1,0);int tmp2=dfs(1,1,1);cout<<max(tmp1,tmp2)<<endl;} 

usaco snail trails(dfs)相关推荐

  1. usaco Snail Trails

    N没有给数据范围是这题最恶心的地方,因为这个wa了有点恶心. /* ID: modengd1 PROG: snail LANG: C++ */ #include <iostream> #i ...

  2. HDU-4277USACO ORZ深搜+set去重

    USACO ORZ(DFS+set去重) 链接 2.题目描述 Like everyone, cows enjoy variety. Their current fancy is new shapes ...

  3. [JLOI 2011]飞行路线[USACO 09FEB]Revamping Trails

    Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并 ...

  4. usaco shuttle puzzle(dfs剪枝)

    这题一看我也以为找规律,然后无法下手之后又想到bfs最后看题解是用dfs大神dfs用的出神入化. 不过这题好像可以找规律. /* ID:jinbo wu TASK: shuttle LANG:C++ ...

  5. usaco street race(dfs)

    一开始我觉得很麻烦但第一题好做由于数据较小直接每个点删后dfs就可以了,第二问我不知道如何判断有没有公共的道路,最后看别人的也挺简单的就是看分别从两条公路的起点开始dfs如果他们能到达同一点就代表有公 ...

  6. Riding the Fences USACO 3.3 欧拉路径(dfs+floodfill)

    额,我是直接dfs的思路,但是到case 5过不去了,感觉是太慢了.然后网上看题解,题目原型就是欧拉路径, 欧拉路径存在的条件是 要么点的度都是偶数,要么只有两个点的度是奇数.如果是两个点的度是奇数, ...

  7. USACO 2.1 健康的好斯坦奶牛 (DFS)

    Description 农民JOHN以拥有世界上最健康的奶牛为骄傲.他知道每种饲料中所包含的的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持他们的健康,使喂给牛的饲料的种数最少. 给出牛 ...

  8. BZOJ1782[USACO 2010 Feb Gold 3.Slowing down]——dfs+treap

    题目描述 每天Farmer John的N头奶牛(1 <= N <= 100000,编号1-N)从粮仓走向他的自己的牧场.牧场构成了一棵树,粮仓在1号牧场.恰好有N-1条道路直接连接着牧场, ...

  9. SSL 1108——【USACO 2.1】海明码(DFS)

    Description 给出 N,B 和 D:找出 N 个编码(1 <= N <= 64),每个编码有 B 位(1 <= B <= 8),使得两两编码之间至少有 D 个单位的& ...

最新文章

  1. Java的CountDownLatch和CyclicBarrier的理解和区别
  2. utf8汉字编码16进制对照(转载)
  3. CentOS7 配置Supervisor开机启动
  4. python【力扣LeetCode算法题库】面试题57 - II-和为s的连续正数序列(滑动窗口)
  5. 【运筹学】运输规划 ( 运输规划基变量个数分析 )
  6. 文字检测与识别资料整理
  7. 汕头市队赛 SRM16 T2
  8. nodejs 写c++插件的实例
  9. spring boot2 kafka
  10. 专科python应届生工资多少-应届生自学Python两个月,为什么找不到工作?
  11. laravel 社会化(联合)登录扩展包(QQ、微信、微博等)
  12. Python(PyCharm)的下载安装汉化(2022)
  13. Appium原理分析
  14. 诱导系统服务器,交通诱导及信息发布系统
  15. Kubernetes K8S之affinity亲和性与反亲和性详解与示例
  16. 由于改 UOM conversion 导致库存数量和财务上的数据错误
  17. 核心概念——节点分组 Combo
  18. [学习笔记]导数与定积分简单入门
  19. java微信签名什么意思,java,_求java实现微信签名,java - phpStudy
  20. java的JVM虚拟机相关知识,简单易懂。

热门文章

  1. 第25章 Pytorch 如何高效使用GPU
  2. JDBC简单操作步骤总结
  3. 通用流水线处理器技术参数
  4. 数字营销,带动汽车销量增长
  5. 混合装置实现了24/7的能量收集和储存
  6. 人工智能微控制器体系结构
  7. 自然语言推理和数据集
  8. ZooKeeper简介和概念知识
  9. svn: Working copy locked
  10. mysql 查看表结构,字段的基本信息(简单明了)。