【洛谷 2661】信息传递

题目描述

有 nn 个同学(编号为 11 到 nn )正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为 ii 的同学的信息传递对象是编号为 T_iTi 的同学。

游戏开始时,每人都只知道自己的生日。之后每一轮中,所有人会同时将自己当前所知的生日信息告诉各自的信息传递对象(注意:可能有人可以从若干人那里获取信息, 但是每人只会把信息告诉一个人,即自己的信息传递对象)。当有人从别人口中得知自 己的生日时,游戏结束。请问该游戏一共可以进行几轮?

输入格式

22行。

11行包含1个正整数 nn ,表示 nn 个人。

22行包含 nn 个用空格隔开的正整数 T_1,T_2,\cdots\cdots,T_nT1,T2,,Tn ,其中第 ii 个整数 T_iTi 表示编号为 ii 的同学的信息传递对象是编号为 T_iTi 的同学, T_i \leq nTin 且 T_i \neq iTii 。

输出格式

11个整数,表示游戏一共可以进行多少轮。

输入输出样例

输入 #1复制
5
2 4 2 3 1
输出 #1复制
3

说明/提示

样例1解释

游戏的流程如图所示。当进行完第33 轮游戏后, 44号玩家会听到 22 号玩家告诉他自己的生日,所以答案为 33。当然,第 33 轮游戏后,22号玩家、 33 号玩家都能从自己的消息来源得知自己的生日,同样符合游戏结束的条件。

对于 30\%30%的数据, n ≤ 200n200;

对于 60\%60%的数据, n ≤ 2500n2500;

对于100\%100%的数据, n ≤ 200000n200000。

 

转载于:https://www.cnblogs.com/wuhu-JJJ/p/11318579.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461637.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kernel移植——从三星官方内核开始移植

以下内容源于朱有鹏嵌入式课程的学习,如有侵权,请告知删除。 一、内核移植初体验 1、获取三星官方的内核源码包 三星SMDKV210开发板附带的光盘里有内核源码包:下载地址。 2、构建移植环境 (1)Windows下建立SI工程&…

Android中实时视频传输(摄像头实时视频传输)解决方案二

为什么80%的码农都做不了架构师?>>> 1、使用FFMpeg进行视频采集,使用Live555进行RTP传输,使用VideoView进行播放。 csdn提到:重载FrameSource,写一个服务类,可以从FrameSource的派生类读取帧数…

很好的 .NET 换肤软件 IrisSkin

当前.NET下提供换肤的控件有IrisSkin和DotNetSkin。但是DotNetSkin提供的Demo版本,功能有限制,一时找不到可以破解的完全版。IrisSkin 的功能不比DotNetSkin差,而且使用简单。不需要原始文件,只需要dll文件和皮肤文件。详细信息可…

定时器——S5PV210定时器的理论与操作

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 一、定时器简介 1、定时器的含义 定时器作为SoC的外设,主要用来实现定时执行代码的功能,它相对SoC而言,就像闹钟相对于人的意义一样。定时器内部的计数器每隔一个…

gson的简单使用方法

gson和其他现有java json类库最大的不同时gson需要序列化得实体类不需要使用annotation来标识需要序列化得字段,同时gson又可以通过使用annotation来灵活配置需要序列化的字段。 下面是一个简单的例子: publicclassPerson {privateString name;privatein…

String.Format格式说明

C#格式化数值结果表字符说明示例输出C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E0011.20E001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{0:N}", …

linux bjobs

bjobs 查看正在进行的job bkill job id 杀死job 转载于:https://www.cnblogs.com/zk-szd1314/p/11322460.html

uboot的移植——DM9000移植的理论基础

以下内容源于朱有鹏嵌入式课程的学习,如有侵权请告知删除。 一、网卡相关的基本知识 1、DM9000网卡芯片和SoC的连接 如上图所示,DM9000网卡芯片是通过SROM总线接口,或者说SROM控制器接入SoC的。下面分别介绍SROM控制器、DM9000网卡芯片的相关…

mysql“Access denied for user 'root'@'localhost'”问题的解决

我的系统是Ubuntu12.04,最近新装好的mysql在进入mysql工具时,总是有错误提示:# mysql -uroot -pEnter password:ERROR 1045 (28000): Access denied for user rootlocalhost (using password: NO)使用网上介绍的方法修改root用户的密码:# mys…

ServiceStack.Redis之IRedisClient第三篇

事实上,IRedisClient里面的很多方法,其实就是Redis的命令名。只要对Redis的命令熟悉一点就能够非常快速地理解和掌握这些方法,趁着现在对Redis不是特别了解,我也对着命令来了解一下这些方法。 一、属性 IRedisClient的属性如下&am…

javascript深入浅出

第一章 数据类型 1,六种数据类型:原始类型(number,string,boolean,null,undefined) object对象(Function Array Date) 2,隐式转换:Na…

mv命令:移动、重命名文件或文件夹

linux使用mv命令来移动、重命名文件或文件夹。 例如,将一个名为abc.txt的文件重命名为1234.txt:mv abc.txt 1234.txt 例如,将目录A重命名为B:mv A B 例如,将a.txt移动到/b下,并重命名为c.txt&#xff1a…

MTK优美代码赏析6:电话本里的快速排序和插入排序算法

MTK优美代码赏析6:电话本里的快速排序和插入排序算法 记得读书的时候学数据结构和一些程序基础的课程,学了很多的排序算法,当时感觉蛮有趣,也很简单,当大学的教育是以理论为主的,哪些教授们又没给咱举个实用的例子说明为什么要教我们这个,所以考完试就把这些没用的东东给忘了..…

Visual C++中最常用的类与API函数

这篇文章能让初学者快速了解visual C MFC中常见的核心的类与函数,虽然全部看下来有点枯燥,但对初学者快速了解MFC的框架结构很有好处。 常用类 CArchive类:用于二进制保存档案 CBitmap类:封装Windows的图形设备接口(GDI)位图 CBru…

vim编译器的使用方法(行号、删除、复制、查找等)

以下内容源于网络资源的学习与整理,如有侵权请告知删除。 vim是在Linux环境下的编辑器,它的常见使用操作如下。 1、显示行号 编辑器默认不显示行号,有二种办法可以显示行号。 (1)第一种是,暂时显示。在vim…

Imagination

Imagination Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 8 Accepted Submission(s) : 3 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description There are four matrixs blow ,…

Day19 练习题

1.列举布尔值为False的值 0,[],{},(),False,’’,None 列如: if 0: 2.写函数: 根据范围获取其中被3和7整除的所有数的和,符合条件的数字个数以及符合条件的数字的总和 3.函数传递参数时,是否用的同一内存地址 name “hairui” de…

error U1087: cannot have : and :: dependents for same target

DDK下build -c错误:error U1087: cannot have : and :: dependents for same target 被build的source code所在path不能含有空格. 转载于:https://www.cnblogs.com/vcerror/p/4289079.html

网络通信基础常识

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 1、网络通信属于进程间通信 进程间通信的一种方法是使用套接字socket,网络通信其实就是位于网络中不同主机上面的2个进程之间的通信。 2、网络通信的层次 网络通信的层次,即…

Android NDK工程创建与编译运行

首发地址:http://www.eoeandroid.com/thread-201993-1-1.html一、 工程创建1. 创建一个Android工程配置好开发环境并加载好对应版本sdk后,选择菜单File->New-> Project创建工程,工程类型选择Android Project,如下图所示&…