电子商务网站建设考试,带分销功能的小程序,wordpress 数据库 缓存6,jquery 单页网站1 /*2 题意#xff1a;将两端涂有颜色的木棒连在一起#xff0c;并且连接处的颜色相同#xff01;3 思路#xff1a;将每一个单词看成一个节点#xff0c;建立节点之间的无向图#xff01;判断是否是欧拉回路或者是欧拉路4 5 并查集判通 奇度节点个数等于2或… 1 /*2 题意将两端涂有颜色的木棒连在一起并且连接处的颜色相同3 思路将每一个单词看成一个节点建立节点之间的无向图判断是否是欧拉回路或者是欧拉路4 5 并查集判通 奇度节点个数等于2或者0 6 */7 #includecstring8 #includecstdio9 #includealgorithm
10 #define N 2500005*2
11 using namespace std;
12
13 int f[N];
14 int trie[N][26];
15 int rank[N];
16 int deg[N];
17
18 int getFather(int x){
19 return xf[x] ? x : f[x]getFather(f[x]);
20 }
21
22 void Union(int a, int b){
23 int fagetFather(a), fbgetFather(b);
24 if(fa!fb){
25 if(rank[fa]rank[fb]){
26 rank[fa]rank[fb]1;
27 f[fb]fa;
28 }
29 else{
30 f[fa]fb;
31 rank[fb]rank[fa]1;
32 }
33 }
34 }
35
36 int main(){
37 int cnt0, c0, cur0;
38 int u, v;
39 char ch[15];
40 for(int i1; iN; i)
41 f[i]i;
42 while(scanf(%s, ch)!EOF){
43 c;
44 cur0;
45 for(int i0; ch[i]; i){
46 if(!trie[cur][ch[i]-a])
47 trie[cur][ch[i]-a]cnt;
48 curtrie[cur][ch[i]-a];
49 }
50 if(c1) ucur;
51 else vcur;
52
53 if((c1)0){
54 Union(u, v);
55 deg[u];
56 deg[v];
57 }
58 }
59 int rootN0, degN0;
60 for(int i1; icnt; i){
61 if(deg[i] f[i]i) rootN;
62 if(deg[i]1) degN;
63 if(rootN1 || degN2) break;
64 }
65 if(rootN1 (degN0 || degN2) || rootN0 degN0)
66 printf(Possible\n);
67 else printf(Impossible\n);
68 return 0;
69 } 转载于:https://www.cnblogs.com/hujunzheng/p/3922611.html