火影忍者之~忍者村

2024-02-28 13:40
文章标签 火影忍者 忍者

本文主要是介绍火影忍者之~忍者村,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

火影忍者之~忍者村
Time Limit: 2000 MSMemory Limit: 65536 K
Total Submit: 287(114 users)Total Accepted: 152(99 users)Rating: Special Judge: No
Description

忍者村是忍者聚居的村子,相等于国家的军事力量。绝大部分村民都是忍者,有一些忍者会在村内开设书店、餐厅等,不过大部分忍者都是为村子执行任务的忍者,以赚取酬劳,并于战时为国家出战。村子亦会培训年轻村民成为忍者。

忍者们一般以三人一组执行各种任务,现在假设不同村子的忍者不会一起执行任务,给出一些忍者的组合,判断由这些组合能确定的最多的忍者村的个数。

Input
第一行是整数n,表示已知n组忍者组合,接下来n行每行三个忍者的名字,n不超过1000,每个名字不长于10.
Output
对于每组输入,输出在这些忍者最多属于多少个忍者村。
Sample Input

7

a b c

c d e

d e f

g k h

l m n

o p q

h r p

Sample Output
3
Source
2012 Spring Contest 3 - STL

题解:并查集+hash的map表达

#include <iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<set>
#include<algorithm>
#include<map>
using namespace std;
int n,l;
map<string,int> mp;
int team[3005];
char ch1[15],ch2[15],ch3[15];
int num(char *s)
{map<string,int>::iterator it;it=mp.find(s);if (it!=mp.end()) return  it->second;else {mp[s]=++l; team[l]=l; return l;}
}
int findteam(int k)
{if (team[k]!=k){team[k]=findteam(team[k]);return team[k];}else return team[k];
}
int main()
{while(~scanf("%d",&n)){mp.clear(); l=0;for(int i=1;i<=n;i++){scanf("%s%s%s",&ch1,&ch2,&ch3);int n1=num(ch1);int n2=num(ch2);int n3=num(ch3);n1=findteam(n1);n2=findteam(n2);n3=findteam(n3);team[n2]=n1;team[n3]=n1;/*if (n1!=n2) team[n2]=n1;if (n1!=n3) team[n3]=n1;if (n2!=n3) team[n3]=n2;这样写就RE了,训练赛时,re到崩溃。这种写法很矛盾吧*/}/*for(int i=1;i<=l;i++) team[i]=findteam(i);sort(team+1,team+1+l);int ans=0;for(int i=1;i<=l;i++)if(team[i]!=team[i-1]) ans++;printf("%d\n",ans);*/set<int> s;for(int i=1;i<=l;i++)s.insert(findteam(team[i]));printf("%d\n",s.size());}return 0;
}

 

转载于:https://www.cnblogs.com/stepping/p/6506870.html

这篇关于火影忍者之~忍者村的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/755665

相关文章

火影忍者第1集-日语自学

1,[00:04] 原句:昔 妖狐ありけり 假名:むかし よう こ ありけり 翻译:从前有妖狐作祟 2,[00:06] 原句:その狐 九つの尾あり 假名:そのきつね ここのつ の お あり 翻译:妖狐生九尾 九つ:假名是「ここのつ」、这里是「九」的训读 3,[00:11] 原句:その尾 一度振らば 山崩れ 津波立つ 假名:そのお いちど ふらば やまくずれ つなみ たつ 翻译:狐动其尾 则山崩

7-15 水果忍者 (30 分)

PS:本题博主没写出来,看了下面这位博主的写法豁然开朗,附上连接:https://www.cnblogs.com/albert-biu/p/10530286.html 2010年风靡全球的“水果忍者”游戏,想必大家肯定都玩过吧?(没玩过也没关系啦~)在游戏当中,画面里会随机地弹射出一系列的水果与炸弹,玩家尽可能砍掉所有的水果而避免砍中炸弹,就可以完成游戏规定的任务。如果玩家可以一刀砍下画面当中一

基于约束求解器对“火影忍者Online”进行智能布阵

文章目录 1. 游戏背景2. 确定决策边界3. 布阵数据3.1 追击状态3.2 角色信息3.3 个性化要求 4. 智能布阵模型4.1 主要的决策变量4.2 约束条件(含辅助决策变量)4.3 目标函数及求解 1. 游戏背景 今天将以“火影忍者Online”为案例,写一个智能布阵的脚本。我最早差不多是在十年前接触到这个游戏,相比于普通的回合制游戏,他里面有一个特别的机制,叫做

还在用手吗?看别人怎么用眼睛玩水果忍者吧!

The Eye Tribe(之前名为Senseye)是一家非常炫酷的技术公司,它致力研究如何通过眼球来控制手机或者平板。在去年12月的Techstars大会上,他们通过一个手机向外展示了一个眼球控制系统的雏形,并在Le Web 2012大会上展示了更新版本。现在他们准备把这项眼球跟踪技术推向市场,正在和手机制造商、运营商建立合作关系,预计消费者明年就能看到首款具备这项技术的设备。目前他们已经获得

用 HTML5 和 Javascript 仿制一个水果忍者网页版! (直接浏览器在线玩+源代码下载)

说起《水果忍者》,恐怕没几个人不认识的吧。它是 iOS、Android 等手机平台上一款极受欢迎的休闲游戏,不得不说,它简单有趣的“切水果”方式真心讨好了不少人,无论是男女老少,多少都有几个人喜欢无聊时砍几把~ 虽然水果忍者官方并没有推出网页版,但网上已有很多仿制品了 (大多由Flash制作)。而今天要介绍的则是一个由 HTML5+Javascript 技术编写的“水果忍者”,和之前介绍过的

忍者必须死3为啥会显示与服务器通信超时,忍者必须死3什么服务器用qq登录

6条解答 1.vivo手机怎么用qq登忍者必须死3 直接在游戏里登陆处选择就行了,如果没有用QQ登陆那就是不支持,还是直接注册账号吧。 2.手机号登入的忍者必须死3腾讯大王卡免流吗 楼主您好: 根据您问题的描述,查询半天未找到该软件适合于腾讯大王卡免流,这个游戏不支持免流呢。 #竭尽所能为您# 3.忍者必须死3的QQ官方群是哪个? 那我就在忍者必须死三的QQ官方群应该是在他的公告上有显示了,你

火影忍者动漫网页 html源码 期末大作业 课程设计

火影忍者动漫网页 html源码 期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:7页 项目页面截图 :

火影忍者网页 html源码 期末大作业 课程设计

火影忍者网页 html源码 期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:6页 项目页面截图 :

哈理工1311 并查集+map火影忍者之~忍者村

火影忍者之~忍者村 Time Limit: 2000 MSMemory Limit: 65536 K Total Submit: 210(74 users)Total Accepted: 119(69 users)Rating: Special Judge: No Description 忍者村是忍者聚居的村子,相等于国家的军事力量。绝大部分村民都是忍者,有一些忍者会在村内开设书店、餐厅

cocos2d-x 4.0 学习之路(十七)第一个小游戏--忍者来袭--升级改造

还记得我们的第一个小游戏–忍者来袭吗? 那个有点太Easy了,敌人对主角一点威胁都没有。那我们今天就改造一下,让敌人也会发子弹,而且一旦敌人的子弹或者敌人碰到主角的话,就Game Over. 首先,我们想一下如何设计,让敌人也会发飞镖?我想要的效果是敌人在移动的过程中,随机位置发射一枚飞镖。 我最开始的想法是,在addMonster()中,做一个敌人的飞镖精灵,它的起始点是敌人随机移动的位置,终