https://www.luogu.org/problemnew/show/P1518

题解:模拟

/*
*@Author:   STZG
*@Language: C++
*/
#include <bits/stdc++.h>
#include<iostream>
#include<algorithm>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<string>
#include<vector>
#include<bitset>
#include<queue>
#include<deque>
#include<stack>
#include<cmath>
#include<list>
#include<map>
#include<set>
//#define DEBUG
#define RI register int
#define endl "\n"
using namespace std;
typedef long long ll;
//typedef __int128 lll;
const int N=10+10;
const int M=100000+10;
const int MOD=1e9+7;
const double PI = acos(-1.0);
const double EXP = 1E-8;
const int INF = 0x3f3f3f3f;
int t,n,m,k,p,l,r,u,v,cx,cy,ct,fx,fy,ft;
int ans,cnt,flag,temp,sum;
bool vis[N][N][4][N][N][4];
char str[N][N];
int dir[4][2]= {-1,0,0,1,1,0,0,-1};
int main()
{
#ifdef DEBUGfreopen("input.in", "r", stdin);//freopen("output.out", "w", stdout);
#endif//ios::sync_with_stdio(false);//cin.tie(0);//cout.tie(0);//scanf("%d",&t);//while(t--){//scanf("%d",&n);n=10;for(int i=1;i<=10;i++){scanf("%s",str[i]+1);for(int j=1;j<=n;j++){if(str[i][j]=='C'){cx=i;cy=j;}else if(str[i][j]=='F'){fx=i;fy=j;}}}int x,y;while(1){if(cx==fx&&cy==fy){ans=cnt;break;}if(vis[cx][cy][ct][fx][fy][ft])break;cnt++;//cout<<cnt<<endl;vis[cx][cy][ct][fx][fy][ft]=1;//cout<<cx<<" "<<cy<<endl;x=cx+dir[ct][0];y=cy+dir[ct][1];if(1<=x&&x<=n&&1<=y&&y<=n&&str[x][y]!='*'){cx=x;cy=y;}else{ct++;ct%=4;}//cout<<fx<<" "<<fy<<endl;x=fx+dir[ft][0];y=fy+dir[ft][1];if(1<=x&&x<=n&&1<=y&&y<=n&&str[x][y]!='*'){fx=x;fy=y;}else{ft++;ft%=4;}}cout<<ans<<endl;//}#ifdef DEBUGprintf("Time cost : %lf s\n",(double)clock()/CLOCKS_PER_SEC);
#endif//cout << "Hello world!" << endl;return 0;
}

两只塔姆沃斯牛 The Tamworth Two相关推荐

  1. [USACO2.4]两只塔姆沃斯牛 The Tamworth Two

    文章目录 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two 题目描述 输入格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 提示 题解: [USACO2.4]两只塔姆沃斯 ...

  2. P1518 两只塔姆沃斯牛 The Tamworth Two(模拟)

    P1518 两只塔姆沃斯牛 The Tamworth Two 219通过 418提交 题目提供者该用户不存在 标签 USACO 难度 普及+/提高 时空限制 1s / 128MB 2017/4/21 ...

  3. 洛谷P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two

    两只塔姆沃斯牛 The Tamworth Two 一.题目信息 1.题目链接 2.题目详情 输入格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 提示 二.题目详解 1.逻辑 2.代码 (1 ...

  4. 洛谷 P1518 两只塔姆沃斯牛 The Tamworth Two

    P1518 两只塔姆沃斯牛 The Tamworth Two 题目背景 题目描述 两只牛逃跑到了森林里.农夫John开始用他的专家技术追捕这两头牛.你的任务是模拟他们的行为(牛和John). 追击在1 ...

  5. 【菜鸟进阶之路】P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two - 洛谷

    一.题目部分 选自洛谷: P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two 二.解题过程 思路 见"提交AC答案"部分给出的注释 提交AC答案 #i ...

  6. java:P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two

    洛谷题目:P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two 题目如下: 思路: 简单的模拟,不过像这种上下左右的移动方式倒是可以留意下,我是用%的方式来改变的. 我的代 ...

  7. 洛谷P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two 题解 (C/C++)

    主要思路如下 1.为了便于边界值的处理,将数组开到12*12 四周边界赋值为'*' ,相当于墙 2.两个一维数组分别存储人和牛的坐标以及方向,北.东.南.西分别用0.1.2.3代表,顺时针转弯时直接将 ...

  8. P1518 两只塔姆沃斯牛 The Tamworth Two(简单的搜索题)

    题目描述 两只牛逃跑到了森林里.农夫John开始用他的专家技术追捕这两头牛.你的任务是模拟他们的行为(牛和John). 追击在10x10的平面网格内进行.一个格子可以是: 一个障碍物, 两头牛(它们总 ...

  9. P1518 [USACO2.4]两只塔姆沃斯牛 The Tamworth Two

    题目描述 两只牛逃跑到了森林里.Farmer John 开始用他的专家技术追捕这两头牛.你的任务是模拟他们的行为(牛和 John). 追击在10×10 的平面网格内进行.一个格子可以是:一个障碍物,两 ...

  10. 洛谷P1518 [USACO2.4] 两只塔姆沃斯牛 The Tamworth Two

    个人觉得我的题解相比其他人的要简单许多(看到好多人写了一堆的if-else,不然就是6维数组) 此题解为我自己写的(已AC),如果有什么不太好的地方,可以说出来大家探讨一下. >>题目入口 ...

最新文章

  1. 自然语言处理NLP之语义相似度、语言模型、doc2vec
  2. 基于Springboot实现仿百度网盘开发
  3. js实现给a href= href赋值
  4. B05_NumPy从数值范围创建数组(numpy.arange,numpy.linspace,numpy.logspace)
  5. 使用WPA Supplicant在Ubuntu 18.04/19.04上从终端连接到Wi-Fi的方法
  6. java 类和对象的理解
  7. C++数据结构与算法(九) 树,优先级队列,最大堆的实现
  8. 【报告分享】2019中国硬科技发展白皮书(195页官方版).pdf(附下载链接)
  9. JDBC.property 配置文件中链接数据库的配置
  10. Nginx代理高德API
  11. VirtualBox下ubuntu和本机win7共享文件夹
  12. html扇形展开,css如何画扇形?
  13. 2019中国产业互联网领袖峰会(上海)
  14. BGP(Border Gatreway Protcol)边界网关路由协议
  15. IEEE T PAMI投稿注意事项
  16. Eclipse汉化方法以及汉化包
  17. 【HTML5初涉】H5与H4的区别
  18. win10计算机添加右键菜单,win10清理鼠标右键菜单提升电脑速度的方法
  19. 盘点互联网大佬背后的女人,最后一个你肯定认识
  20. 李开复给中国大学生的第三封信---成功、自信、快乐

热门文章

  1. oracle中字符串的脚本表示什么意思,sql脚本中rem与prompt,define等的含义
  2. c#匿名方法用途_C#的匿名方法
  3. linux查看网卡物理编号_关于如何查看多网卡物理机中网卡序号与物理网卡的对应该关系...
  4. ad 原理图差分线_再改原理图,得加钱检查原理图PCB系列教程17
  5. fscokopen php,详解PHP fsockopen的使用方法
  6. 需要自我总结的知识点
  7. java 修改ip_如何用脚本快速修改IP地址(Netsh)
  8. linux下mongdb绑定ip,Linux下MongoDB安装及副本集配置 | 聂扬帆博客
  9. php 输出excepion内容,带有消息“无法关闭zip文件php://输出”的PHPExcel_Writer_Exception...
  10. down redis集群_Redis总结(十)redis集群-哨兵模式