poj 2021 Relative Relatives(暴力)
题目链接:http://poj.org/problem?id=2021
思路分析:由于数据较小,采用O(N^2)的暴力算法,算出所有后代的年龄,再排序输出。
代码分析:
#include <iostream>
#include <string.h>
#include <algorithm> using namespace std;
#define MAX_N ( 100 + 10 ) typedef struct Descendant
{
char Name[];
int Age;
}Desd; char Father[MAX_N][];
char Child[MAX_N][];
int Age[MAX_N];
Desd Descen[MAX_N];
int Cmp( Desd a, Desd b ); int main()
{
int n, Count; Count = ;
strcpy( Descen[].Name, "Ted" );
Descen[].Age = ; scanf( "%d", &n );
for ( int i = ; i < n; ++i )
{
int Num, Index_Father, EndDescen; Index_Father = EndDescen = ;
Count++; scanf( "%d\n", &Num );
for ( int j = ; j < Num; ++j )
scanf( "%s %s %d", Father[j], Child[j], &Age[j] ); while ( Index_Father < Num )
{
for ( int m = ; m < Num; ++m )
{
if ( strcmp( Descen[Index_Father].Name, Father[m] ) == )
{
EndDescen++;
strcpy( Descen[EndDescen].Name, Child[m] );
Descen[EndDescen].Age = Descen[Index_Father].Age - Age[m];
}
}
Index_Father++;
} sort( Descen, Descen + Num + , Cmp ); printf( "DATASET %d\n", Count );
for ( int n = ; n <= Num; ++n )
printf( "%s %d\n", Descen[n].Name, Descen[n].Age );
} return ;
} int Cmp( Desd a, Desd b )
{
if ( a.Age == b.Age )
return strcmp( a.Name, b.Name ) < ;
else
return a.Age > b.Age;
}
poj 2021 Relative Relatives(暴力)的更多相关文章
- POJ 2021 Relative Relatives
Relative Relatives Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 3339 Accepted: 146 ...
- POJ 2021 Relative Relatives(map+树的遍历)
题意: 今天是Ted的100岁生日.凑巧的是,他家族里面每个人都跟他同一天生日,但是年份不同. 现在只给出一些 父亲的名字,孩子的名字,以及孩子出生时父亲的年龄, 要求将Ted以外的家族成员按年龄降序 ...
- poj 3714 Raid【(暴力+剪枝) || (分治法+剪枝)】
题目: http://poj.org/problem?id=3714 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=27048#prob ...
- POJ 3522 Slim Span 暴力枚举 + 并查集
http://poj.org/problem?id=3522 一开始做这个题的时候,以为复杂度最多是O(m)左右,然后一直不会.最后居然用了一个近似O(m^2)的62ms过了. 一开始想到排序,然后扫 ...
- poj 2585 Window Pains 暴力枚举排列
题意: 在4*4的格子中有9个窗体,窗体会覆盖它之下的窗体,问是否存在一个窗体放置的顺序使得最后的结果与输入同样. 分析: 在数据规模较小且不须要剪枝的情况下能够暴力(思路清晰代码简单),暴力一般分为 ...
- POJ 1012 Joseph 推导,暴力,约瑟夫环,打表 难度:2
http://poj.org/problem?id=1012 答案以954ms飘过,不过这道题可以轻松用打表过 思路:如果我们把每个人位于数组中的原始编号记为绝对编号,每次循环过后相对于绝对编号为0的 ...
- POJ - 3279(枚举+暴力)
Fliptile Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 14297 Accepted: 5257 Descrip ...
- POJ 2896 另解暴力
就是简单的用strstr函数对字符串进行处理. 另解:暴力(就是用strstr函数对字符串进行处理)另解:暴力(普通的字符串处理 .关键是strstr函数): #include<stdio.h& ...
- POJ 2407:Relatives(欧拉函数模板)
Relatives AC代码 Relatives Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16186 Accept ...
随机推荐
- 关于ue上传图片到七牛云设置key
多图上传设置key: dialogs文件下面,image文件下面的image.html,链接webuploader.js,不链接webuploader.min.js webuploader.js里面 ...
- Bootstrap 源码解析
前言 Bootstrap 是个CSS库,简单,高效.很多都可以忘记了再去网站查.但是有一些核心的东西需要弄懂.个人认为弄懂了这些应该就算是会了.源码看一波. 栅格系统 所谓的栅格系统其实就是一种布局方 ...
- C#连接Oracle数据库基本类
C#用来连接oracle数据库的基本类: using System; using System.Collections.Generic; using System.Linq; using System ...
- 浅谈JDBC(二)
JDBC中的事务 简单来说,事务就是要保证一组DAO方法的操作,要么一起成功要么一起失败. 1.事务控制的位置 在Service中的业务方法内进行事务控制. 2.事务控制的代码 a.注意:JDBC会自 ...
- C++数组与指针
指向数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址.指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中) ...
- tmod命令
tmod ./tpl --debug --no-watch --output ./tplbuild
- 神奇的魔法数字0x61c88647
来源JDK源码,产生的数字分布很均匀 用法代码如下. # -*- coding: utf-8 -*- HASH_INCREMENT = 0x61c88647 def magic_hash(n): fo ...
- BeanUtils复制属性
package xiao; public class User2 { private String name; private String password; public String getNa ...
- MultiView空间例子
CSS代码: body { font-size:11pt; font-family:宋体; } .mainTitle { font-size:11pt; font-weight:bold; font- ...
- Poj 2232 Moo Volume(排序)
题目链接:http://poj.org/problem?id=2231 思路分析:先排序,再推导计算公式. 代码如下: #include <iostream> #include <a ...