[poj2337]求字典序最小欧拉回路
注意:找出一条欧拉回路,与判定这个图能不能一笔联通。。。是不同的概念
c++奇怪的编译规则。。。生不如死啊。。。
string怎么用啊。。。cincout来救?
可以直接.length()我也是长见识了。。。
CE怎么办啊。。。g++来救?
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
#define N 2020
using namespace std;
];
],];];
;
int head[N],vet[N],pri[N],next[N],flag[N],len[N];
void add(int u,int v,int w)
{
edgenum++;vet[edgenum]=v;next[edgenum]=head[u];head[u]=edgenum;
pri[edgenum]=w;
}
void dfs(int u)
{
int e=head[u];
)
{
int v=vet[e];
){
flag[e]=;dfs(v);ans[cnt++]=pri[e];
}
e=next[e];
}
}
int main()
{
int cas,n;scanf("%d",&cas);
while(cas--)
{
scanf("%d",&n);
;i < n;i++)
cin>>str[i];
sort(str,str+n);//要输出字典序最小的解,先按照字典序排序
//for(int i=0;i<n;i++)len[i]=strlen(str[i]);
edgenum=;memset(head,,sizeof(head));
memset(flag,,sizeof(flag));
memset(,,sizeof(out));
;
;i>=;i--){
])-])-'a';
add(u,v,i);out[u]++;in[v]++;
if(u<start)start=u;if(v<start)start=v;
}
,cc2=;
;i<;i++){
){
cc1++;start=i;
})cc2++;)cc1=;
}
&&cc2==)||(cc1==&&cc2==))){
printf("***\n");continue;
}
cnt=;dfs(start);
if(cnt!=n){printf("***\n");continue;}
; i >= ;i--)
{
cout<<str[ans[i]];
)printf(".");
else printf("\n");
}
}
}
然而这道题可是需要把所有边一遍走掉的。
[poj2337]求字典序最小欧拉回路的更多相关文章
- HDU 5915 The Fastest Runner Ms. Zhang (CCPC2016 长春 E题,分类讨论 + 求字典序最小的直径 + 数据结构寻找最小值)
题目链接 CCPC2016 Changchun Problem E 题意 给定一个$n$个点$n$条边的无向图,现在从某一点$s$出发,每个点都经过一遍,最后在$t$点停止,经过的边数为$l$ ...
- POJ 2337 Catenyms (有向图欧拉路径,求字典序最小的解)
Catenyms Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8756 Accepted: 2306 Descript ...
- Floyd求字典序最小的路径
hdu1384 Minimum Transport Cost Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ...
- 图论--2-SAT--暴力染色法求字典序最小模版
#include <cstdio> #include <cstring> #include <stack> #include <queue> #incl ...
- BZOJ1046 [HAOI2007]上升序列 【LIS + 字典序最小】
1046: [HAOI2007]上升序列 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 5410 Solved: 1877 [Submit][St ...
- Catenyms (POJ2337) 字典序最小欧拉路
// 很久不写图论,连模板也不熟悉了0.0 // 这题是一个技巧性比较高的暴力DFS Catenyms 题目大意 定义catenym为首尾字母相同的单词组成的单词对, 例如: dog.gopher g ...
- POJ1815 Friendship(字典序最小最小割割边集)
看了题解.当时也觉得用邻接矩阵挺好写的,直接memset:然而邻接矩阵不懂得改,于是就放开那个模板,写了Dinic.. 方法是,按字典序枚举每一条满流的边,然后令其容量减1,如果最大流改变了,这条边就 ...
- poj 1815 Friendship 字典序最小+最小割
题目链接:http://poj.org/problem?id=1815 In modern society, each person has his own friends. Since all th ...
- HDU 1385 Minimum Transport Cost (输出字典序最小路径)【最短路】
<题目链接> 题目大意:给你一张图,有n个点,每个点都有需要缴的税,两个直接相连点之间的道路也有需要花费的费用.现在进行多次询问,给定起点和终点,输出给定起点和终点之间最少花费是多少,并且 ...
随机推荐
- Angular.js实现折叠按钮的经典指令.
var expanderModule=angular.module('expanderModule',[]) expanderModule.directive('expander',function( ...
- 10月28日下午MySQL数据库的增加、删除、查询(匹配数据库登录和可以增、删、查的显示数据库内容的页面))
一.匹配数据库登录 步骤: 1.做一个普通的登录界面,注意提交方式为post. <!--登录界面--> <form action="chuli.php" meth ...
- 面试题目——《CC150》树与图
面试题4.1:实现一个函数,检查二叉树是否平衡.在这个问题中,平衡树的定义如下:任意一个结点,其两颗子树的高度差不超过1. 思路:两个方法,第一种速度较快 package cc150; public ...
- 第一次部署Struts2时出现错误java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.class
报如下错误 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720) at org. ...
- 关于使用 no-js (Modernizr)
最近有些朋友问到:为什么我的网页 code 有 class="no-js" ? <!DOCTYPE html> <html dir="ltr" ...
- “基础提供程序在Open上失败”
本来布置在IP为[x.x.x.x]的WCF服务好好的,但是今天突然就有问题了,一调用报错"基础提供程序在Open上失败"... 服务器上的有问题,先试试本地的服务能不能用吧,连的都 ...
- vijos1404 遭遇战
描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC的人誓死不屈,即将于恐怖分子展开激战,准备让一个人守着A区,这样恐怖分子就不能炸掉服务器了.(一 ...
- mac 下修改jenkins的 端口号
sudo defaults write /Library/Preferences/org.jenkins-ci httpPort 7070
- 如何使用Service的Context弹出Dialog对话框,即全局性对话框
在dialog.show()语句前加入: dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); 然后在An ...
- jq 实现无限级地区联动 样式为bootstrap
HTML 部分 <div class="row" style="margin:100px auto;"> <form method=" ...