hdu1181 变形课(vector容器+dfs)
变形课
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)
Total Submission(s): 16998 Accepted Submission(s): 6128
Harry已经将他所会的全部咒语都列成了一个表,他想让你帮忙计算一下他能否完毕老师的作业,将一个B(ball)变成一个M(Mouse),你知道,假设他自己不能完毕的话,他就仅仅好向Hermione请教,而且被迫听一大堆好好学习的道理.
每组有多行,每行一个单词,仅包含小写字母,是Harry所会的全部咒语.数字0表示一组输入结束.
so
soon
river
goes
them
got
moon
begin
big
0
Yes.Harry 能够念这个咒语:"big-got-them".HintHint
就用vector做了。
vector容器,第一次用到。理解vector数组好理解。但是不知道为什么变成二维数组了。当中map[i][j]可能比較难懂。
样例:map[1]=2,map[1]=3,map[1]=4;那么map[1][0]就等于1,map[1][1]=3,map[1][2]=4.并且map[1].size()=3;(由于map[1]仅仅有2,3,4三个值)。
这道题的战绩:
哈哈。。最后才知道错哪里了
#include <stdio.h>
#include <vector>
#include <string.h>
using namespace std;
vector<int>fa[130];
int flag,vis[130][130];
void find(int x,int root)
{
for(int i=0;i<fa[x].size();i++)
{
if(fa[x][i]!=root&&!vis[i][x])
vis[i][x]=1,find(fa[x][i],root);//我错在把vis[i][x]放在递归的后面了。 。哎 不知道怎么想的
if(fa[x][i]==root&&!vis[i][x])
{
flag=1;
break;
}
}
}
int main()
{
char str[20];
int len;
while(scanf("%s",str)!=EOF)
{
memset(fa,0,sizeof(fa));
memset(vis,0,sizeof(vis));
len=strlen(str);
fa[str[0]].push_back(str[len-1]);
while(scanf("%s",str)!=EOF)
{
if(str[0]=='0')
break;
else
len=strlen(str),fa[str[0]].push_back(str[len-1]);
}
flag=0;
find(98,109);
if(flag)
printf("Yes.\n");
else
printf("No.\n");
}
}
hdu1181 变形课(vector容器+dfs)的更多相关文章
- hdu1181 (变形课)简单地dfs
http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=259#problem/F Description 呃......变形课上Harr ...
- HDU1181 变形课(DFS) 2016-07-24 13:31 73人阅读 评论(0) 收藏
变形课 Problem Description 呃......变形课上Harry碰到了一点小麻烦,因为他并不像Hermione那样能够记住所有的咒语而随意的将一个棒球变成刺猬什么的,但是他发现了变形咒 ...
- HDU1181 变形课 (回溯法)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
- HDU 变形课 1181【DFS/BFS】
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submissi ...
- hdu1181 变形课
Problem Description 呃......变形课上Harry碰到了一点小麻烦,因为他并不像Hermione那样能够记住所有的咒语而随意的将一个棒球变成刺猬什么的,但是他发现了变形咒语的一个 ...
- 变形课hd1181(DFS)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
- hdu1181变形课(floyd)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
- HDU-1181 变形课(多种方式,好题)
首先想到的是并查集,然后WA...原因在这,我第一次敲的是Find(1) == Find(12)来作为可以成功的条件,实际上这样是不行的,比方说 bell 和 mail实际上是不满足条件的,可以理 ...
- 变形课(DFS hdu 1181)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
随机推荐
- AngularJS学习篇(十六)
AngularJS 表单 HTML 控件 以下 HTML input 元素被称为 HTML 控件: input 元素 select 元素 button 元素 textarea 元素 HTML 表单 H ...
- Ajax 跨域 异步 CORS
HTTP access control (CORS) 核心在于使用定制(添加新的header)HTTP header让浏览器和服务器有更多的相互了解,从而决定一个请求或者响应成功还是失败 对于一个 ...
- 为JS内置对象添加常用方法
1.字符串全部替换: String.prototype.replaceAll = function(s1,s2){ return this.replace(new RegExp(s1,"gm ...
- 使用springboot完成密码的加密解密
现今对于大多数公司来说,信息安全工作尤为重要,就像京东,阿里巴巴这样的大公司来说,信息安全是最为重要的一个话题,举个简单的例子: 就像这样的密码公开化,很容易造成一定的信息的泄露.所以今天我们要讲的就 ...
- C#多线程和线程同步总结
Thread 没有参数的线程启动 Thread newThread = new Thread(new ThreadStart(DoWork)); newThread.Start(); 有参数的线程启动 ...
- Delphi工程版本号修改工具
自动修改某目录下符合条件的Delphi工程(dproj)版本号, 支持命令行调用支持通配符忽略文件 -p [Path] 在[Path]路径下查询所有dproj文件(可以为空, 默认路径为程序当前路径) ...
- 从运维的角度分析使用阿里云数据库RDS的必要性--你不应该在阿里云上使用自建的MySQL/SQL Server/Oracle/PostgreSQL数据库
开宗明义,你不应该在阿里云上使用自建的MySQL or SQL Server数据库,对了,还有Oracle or PostgreSQL数据库. 云数据库 RDS(Relational Database ...
- C#的Main(String[] args)参数输入问题
1.新建一个控制台应用程序,保存在桌面上,Main函数如下所示 using System;using System.Collections.Generic;using System.Linq;usin ...
- Linux下安装ActiveMQ CPP
ActiveMQ CPP ActiveMQ CPP是用C++语言访问ActiveMQ的客户端开发库,也称cms(cpp message service),安装cms开发库需要先安装一些基础库. 如下: ...
- ssh相关原理学习与常见错误总结
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...