摘要:
简单并查集 有联通的就合并在一起 最后看共有多少棵树 就有多少个灾民集中区域View Code 1 #include <stdio.h> 2 #include <stdlib.h> 3 int father[201],num[201]; 4 int find(int x) 5 { 6 if(x!=father[x]) 7 { 8 father[x] = find(father[x]); 9 }10 return father[x];11 }12 void union1(int x, int y)13 {14 father[x] = y;... 阅读全文
摘要:
http://poj.org/problem?id=2492跟1703一样 两种状态 并查集+偏移量两只虫子发射架关系 判断有没有虫子是同性恋 两两合并 在一棵树上找右没有两个节点跟跟节点的关系(只有0,1两种)是相同的,相同就是gay注意一点 两组数据间有空行View Code 1 #include <stdio.h> 2 #include <stdlib.h> 3 int father[2001],num[2001],r[2001]; 4 int find(int x) 5 { 6 if(x!=father[x]) 7 { 8 int y = father... 阅读全文
摘要:
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=98&page=show_problem&problem=1361题不难 我交了八次。。 刚开始以为还要判断一个国家会不会重复妇女的名字 写的复杂了 一直runtime 看了下别人的代码 知道不用判断 删去了一大部分 之后开始WA 最后找到原因 是因为除国家外 因为不确定名字的字符串数 名字用gets输入开两个数组 一个存国家 一个存数量 有输入重复的国家 就剪掉View Code 1 #include &l 阅读全文
摘要:
纠结了好几个小时 不明白哪错了 跟别人的代码仔仔细细的对照才发现题目要求把原来的数据再输出一遍 石化。。选择排序的思想 每次找到最大的那个数将它放在该放的位置输入用字符串 再转化成数字UVA就是麻烦 来来回回的逆转 都转晕了View Code 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include<string.h> 4 int n ; 5 void deal(char *s,int *a) 6 { 7 int begin,end,len=strlen(s); 8 n=0; 9 begin=0;10 end 阅读全文