家谱(gen)

时间限制  2S

【问题描述】

现代的人对于本家族血统越来越感兴趣,现在给出充足的父子关系,请你编写程序找到某个人的最早的祖先。

【输入格式】gen.in

  输入文件由多行组成,首先是一系列有关父子关系的描述,其中每一组父子关系由二行组成,用#name的形式描写一组父子关系中的父亲的名字,用+name的形式描写一组父子关系中的儿子的名字;接下来用?name的形式表示要求该人的最早的祖先;最后用单独的一个$表示文件结束。规定每个人的名字都有且只有6个字符,而且首字母大写,且没有任意两个人的名字相同。最多可能有1000组父子关系,总人数最多可能达到50000人,家谱中的记载不超过30代。

【输出格式】gen.out

  按照输入文件的要求顺序,求出每一个要找祖先的人的祖先,格式:本人的名字+一个空格+祖先的名字+回车。

学学学学学学学mapmapmapmapmap

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<algorithm>
 4 #include<map>
 5 using namespace std;
 6 map<string,string>mp;
 7 string father,s2="";
 8 int main()
 9 {
10     char a;
11     while(cin>>a)
12     {
13         if(a==‘$‘)
14         break;
15         if(a==‘#‘)
16         {
17             cin>>s2;
18             if(mp[s2]=="")mp[s2]=s2;
19             father=s2;
20         }
21         if(a==‘+‘)
22         {
23             cin>>s2;
24             while(mp[father]!=father)father=mp[father];
25             mp[s2]=father;
26         }
27         if(a==‘?‘)
28         {
29             cin>>s2;
30             cout<<s2<<" "<<mp[s2]<<endl;
31         }
32
33     }
34     return 0;
35 }
时间: 2024-11-01 10:55:29

家谱(gen)的相关文章

家谱 要测试数据的在评论里发联系方式

家谱(gen) 时间限制  2S [问题描述] 现代的人对于本家族血统越来越感兴趣,现在给出充足的父子关系,请你编写程序找到某个人的最早的祖先. [输入格式]gen.in 输入文件由多行组成,首先是一系列有关父子关系的描述,其中每一组父子关系由二行组成,用#name的形式描写一组父子关系中的父亲的名字,用+name的形式描写一组父子关系中的儿子的名字:接下来用?name的形式表示要求该人的最早的祖先:最后用单独的一个$表示文件结束.规定每个人的名字都有且只有6个字符,而且首字母大写,且没有任意两

什么?php也能做爬虫?

php爬虫代码(爬去我的OJ题库为例) <?php for ($i=1000;;$i++){ $url = "http://localhost/JudgeOnline/problem.php?pid=$i"; //这儿填OJ地址 $info=file_get_contents($url); preg_match('|<title>(.*?)<\/title>|i',$info,$m); //获取标题 $title[$i][1]=$m[1]; if (!$m

家谱(gen)

题目描述 输入文件名 GEN.IN 输出文件名    GEN.OUT 时间限制      2S 现代的人对于本家族血统越来越感兴趣,现在给出充足的父子关系,请你编写程序找到某个人的最早的祖先. 输入 输入文件由多行组成,首先是一系列有关父子关系的描述,其中每一组父子关系由二行组成,用#name的形式描写一组父子关系中的父亲的名字,用+name的形式描写一组父子关系中的儿子的名字:接下来用?name的形式表示要求该人的最早的祖先:最后用单独的一个$表示文件结束.规定每个人的名字都有且只有6个字符,

家谱(gen)——洛谷P2814

1 #include <iostream> 2 #include <string> 3 #include <map> 4 using namespace std; 5 map < string, string > mp; 6 int main() 7 { 8 string s1 = "", s2 = ""; 9 while(cin >> s1) 10 { 11 mp.clear(); 12 while(s1

Android gen根目录下自动生成的R文件指向问题

今天才弄明白,原来在调用vitamio包的时候使用它们的R文件,然后在迁入广告的时候出现了问题,但是瞎胡搞半天后把问题解决了,可没有明白这是什么原因. 今天更新应用又出现了相同的情况,无意中打开了gen的根目录妈蛋!发现里面的报名根本就不是我现在应用的包名.而是调用的那个工程的包名!这下终于找到根本原因了,但是怎么解决呢???----------->修改包名呗~~~~~~~可是你改了它又会自动生成了原来的那个,--------------后来终于发现原来这个R文件的包名适合manifest文件中

洛谷 P2814 家谱

P2814 家谱 题目背景 现代的人对于本家族血统越来越感兴趣. 题目描述 给出充足的父子关系,请你编写程序找到某个人的最早的祖先. 输入输出格式 输入格式: 输入由多行组成,首先是一系列有关父子关系的描述,其中每一组父子关系中父亲只有一行,儿子可能有若干行,用#name的形式描写一组父子关系中的父亲的名字,用+name的形式描写一组父子关系中的儿子的名字:接下来用?name的形式表示要求该人的最早的祖先:最后用单独的一个$表示文件结束. 输出格式: 按照输入文件的要求顺序,求出每一个要找祖先的

洛谷P1472 奶牛家谱 Cow Pedigrees

P1472 奶牛家谱 Cow Pedigrees 102通过 193提交 题目提供者该用户不存在 标签USACO 难度普及+/提高 提交  讨论  题解 最新讨论 暂时没有讨论 题目描述 农民约翰准备购买一群新奶牛. 在这个新的奶牛群中, 每一个母亲奶牛都生两个小奶牛.这些奶牛间的关系可以用二叉树来表示.这些二叉树总共有N个节点(3 <= N < 200).这些二叉树有如下性质: 每一个节点的度是0或2.度是这个节点的孩子的数目. 树的高度等于K(1 < K < 100).高度是从

LLBL Gen Pro 5.0

LLBL Gen Pro 5.0 企业应用开发入门 Solutions Design 公司于2016年5月发布了LLBL Gen Pro 5.0,这个新版本的发布出乎于我的意料.我的猜想是从4.2升级到4.5,再升级5.x版本,主版本号的变更会给原有客户带来成本上的压力.299欧元的售价对于中小创业公司或大公司并不算便宜,在官网上查了一下最新的报价,如下表所示: Number of licenses Price per license Standard Price per license Plu

在Intel&#174; Galileo Gen 2开发板上运行Debian操作系统

    最近在研究Intel® Galileo Gen 2开发板的Linux开发.Intel® Galileo Gen 2开发板自带的Linux比较简单,缺少很多常用的软件,而且板子自身的容量很小.所以我打算在SD卡上运行Debian系统,这个系统里装有apt-get,缺少什么软件可以通过网络安装. 1. 下载Galileo的debian镜像.    到http://sourceforge.net/projects/galileodebian/下载Galileo的debian软件镜像galile