uva 10129 单词
来源:互联网 发布:热门聊天社交软件 编辑:程序博客网 时间:2024/05/16 19:32
这一题是典型的欧拉道路题目。 欧拉道路的定义是: 除了起点和终点外, 其他点的“进出” 次数应该相等。
换句话说,除了起点和终点外, 其他点的度数应该是偶数。
对于有向图, 则必须其中一个点的出度恰好比入度大1, 另一个的入度比出度大。
如果奇点数不存在的话, 则可以从任意点出发,最终一定会回到该点(成为欧拉回路)。
题目给的单词量比较大,但是有用的只有首和尾的字母,所以只需要存首尾字母就可以了。
欧拉道路还有关键的一部是判断这一个图是连通的, 并且只有一个一个连通分支。
这个可以用并查集的方法, 也可一用dfs直接搜索。
// Created by Chenhongwei in 2015.// Copyright (c) 2015 Chenhongwei. All rights reserved.#include"iostream"#include"cstdio"#include"cstdlib"#include"cstring"#include"climits"#include"queue"#include"cmath"#include"map"#include"set"#include"stack"#include"vector"#include"sstream"#include"algorithm"using namespace std;typedef long long ll;int T,n,cnt;int v[100][100],tmp[100][100];int euler(int u){for(int v=1;v<=26;v++){if(tmp[u][v]){tmp[u][v]--;euler(v);cnt++;}}return 0;}int main(){//ios::sync_with_stdio(false);// freopen("in.txt","r",stdin);//freopen("out.txt","w",stdout);cin>>T;string s;while(T--){cin>>n;memset(v,0,sizeof v);for(int i=1;i<=n;i++){cin>>s;int x=s[0]-'a'+1,y=s[s.size()-1]-'a'+1;// cout<<x<<' '<<y<<endl;v[x][y]++;}for(int i=1;i<=26;i++){cnt=0;memcpy(tmp,v,sizeof v);euler(i);if(cnt==n)break;}// cout<<cnt<<endl;if(cnt==n)cout<<"Ordering is possible."<<endl;elsecout<<"The door cannot be opened."<<endl;}return 0;}
0 0
- UVA 10129 单词
- UVa 10129 单词
- uva 10129 单词
- UVa-10129 单词
- 【Uva 10129】玩弄单词
- uva-10129 单词
- 例题:单词(UVa 10129h)
- 例题6-16 UVA 10129 Play On Words单词
- UVa 10129 单词 (有向欧拉路+并查集)
- Play on Words 单词 UVA 10129 (欧拉+dfs)
- 紫书章六例题16 单词 UVA 10129(欧拉道路)
- 例题6-16 单词(Play On Words, UVa 10129)
- 10129单词
- Uva 10129 - Play on Words 单词接龙 欧拉道路应用
- uva 10129 Play On Words(单词)求欧拉回路或欧拉通路
- UVA 123 - Searching Quickly(分离单词)
- UVA-10008统计单词的数量
- UVA 10391(把符合单词输出,map)
- uva 1494 - Qin Shi Huang's National Road System(最小生成树)
- 配置/etc/sysconfig/network-script/ifcfg-eth0
- hdu1828(线段树+扫描线求周长)
- redis常用命令笔记
- ActiveMQ in action 前言
- uva 10129 单词
- Uva-10817 Headmaster's Headache
- JMX的Hello World
- Fedora22远程连接win8.1一路遇到的问题与解决方法
- 【C++学习笔试】-模板
- 学习Qt5(4)
- 使用ServerSocket、Socket创建一个简单的服务聊天程序
- nginx 测试
- 自动化测试-python脚本语言