题目描述 Description

• 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习。组委会觉得这个主意不错!可是组委会一时没有足够的空光盘,没法保证每个人都能拿到刻录上资料的光盘,怎么办呢?! •  DYJ分析了一下所有营员的地域关系,发现有些营员是一个城市的,其实他们只需要一张就可以了,因为一个人拿到光盘后,其他人可以带着U盘之类的东西去拷贝啊! •  他们愿意某一些人到他那儿拷贝资料,当然也可能不愿意让另外一些人到他那儿拷贝资料,这与我们FJOI宣扬的团队合作精神格格不入!!! •  现在假设总共有N个营员(2<=N<=200),每个营员的编号为1~N。DYJ给每个人发了一张调查表,让每个营员填上自己愿意让哪些人到他那儿拷贝资料。当然,如果A愿意把资料拷贝给B,而B又愿意把资料拷贝给C,则一旦A获得了资料,则B,C都会获得资料。 •  现在,请你编写一个程序,根据回收上来的调查表,帮助DYJ计算出组委会至少要刻录多少张光盘,才能保证所有营员回去后都能得到夏令营资料?

输入描述 Input Description

先是一个数N,接下来的N行,分别表示各个营员愿意把自己获得的资料拷贝给其他哪些营员。即输入数据的第i+1行表示第i个营员愿意把资料拷贝给那些营员的编号,以一个0结束。如果一个营员不愿意拷贝资料给任何人,则相应的行只有10,一行中的若干数之间用一个空格隔开。

输出描述 Output Description

一个正整数,表示最少要刻录的光盘数。

样例输入 Sample Input

2 4 3 0 

4 5 0 

1 0

样例输出 Sample Output

1

数据范围及提示 Data Size & Hint

2<=N<=200

分类标签 Tags 点此展开

见过因为换行符而引发的血案吗???????

数据:

运行结果

测试点#CDROM1.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM2.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM3.in 结果:AC 内存使用量: 256kB 时间使用量: 1ms
测试点#CDROM4.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM5.in 结果:AC 内存使用量: 128kB 时间使用量: 1ms
测试点#CDROM6.in 结果:WA 内存使用量: 256kB 时间使用量: 1ms
测试点#CDROM7.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM8.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM9.in 结果:AC 内存使用量: 256kB 时间使用量: 1ms
测试点#Cdrom10.in 结果:AC 内存使用量: 256kB 时间使用量: 1ms

代码:

 #include<cstdio>
#define Maxn 201
using namespace std;
int note[Maxn],tot=; int main()
{
int n;
scanf("%d",&n);
for(int i=; i<=n; i++)
{
for(;;)
{
int num;
scanf("%d",&num);
if(num==)
break;//结束标志
note[num]=;
}
}
for(int i=; i<=n; i++)
if(note[i]==)
tot++;//记录没有出现过的
if(tot==)
tot++;//如果都可以通过别人得到,那么就说明只给一个人就行
printf("%d\n",tot);
return ;
}

AC数据:

运行结果

测试点#CDROM1.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM2.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM3.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM4.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM5.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM6.in 结果:AC 内存使用量: 256kB 时间使用量: 1ms
测试点#CDROM7.in 结果:AC 内存使用量: 256kB 时间使用量: 1ms
测试点#CDROM8.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#CDROM9.in 结果:AC 内存使用量: 256kB 时间使用量: 0ms
测试点#Cdrom10.in 结果:AC 内存使用量: 128kB 时间使用量: 1ms

代码:

 #include<cstdio>
#define Maxn 201 using namespace std; int note[Maxn],tot=; int main()
{
int n;
scanf("%d",&n);
for(int i=; i<=n; i++){
for(;;){
int num;
scanf("%d",&num);
if(num==)
break;//结束标志
note[num]=;
}
}
for(int i=; i<=n; i++)
if(note[i]==)
tot++;//记录没有出现过的
if(tot==)
tot++;//如果都可以通过别人得到,那么就说明只给一个人就行
printf("%d",tot);
return ;
}

codevs 5969 [AK]刻录光盘x的更多相关文章

  1. codevs 原创抄袭题 5969 [AK]刻录光盘

    题目描述 Description • 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会一时 ...

  2. 5969 [AK]刻录光盘

    题目描述 Description • 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会一时 ...

  3. 【CodeVS 3290】【NOIP 2013】华容道

    http://codevs.cn/problem/3290/ 据说2013年的noip非常难,但Purpleslz学长还是AK了.能A掉这道题真心orz. 设状态$(i,j,k)$表示目标棋子在$(i ...

  4. codevs 1576 最长严格上升子序列

    题目链接:http://codevs.cn/problem/1576/ 题目描述 Description 给一个数组a1, a2 ... an,找到最长的上升降子序列ab1<ab2< .. ...

  5. Codevs 2756 树上的路径

    2756 树上的路径  时间限制: 3 s  空间限制: 128000 KB  题目等级 : 大师 Master     题目描述 Description 给出一棵树,求出最小的k,使得,且在树中存在 ...

  6. P2835 刻录光盘

    洛谷—— P2835 刻录光盘 题目描述 在JSOI2005夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会 ...

  7. codevs 3289 花匠

    题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...

  8. codevs 1082 线段树练习 3(区间维护)

    codevs 1082 线段树练习 3  时间限制: 3 s  空间限制: 128000 KB  题目等级 : 大师 Master 题目描述 Description 给你N个数,有两种操作: 1:给区 ...

  9. codevs 1285 二叉查找树STL基本用法

    C++STL库的set就是一个二叉查找树,并且支持结构体. 在写结构体式的二叉查找树时,需要在结构体里面定义操作符 < ,因为需要比较. set经常会用到迭代器,这里说明一下迭代器:可以类似的把 ...

随机推荐

  1. C++多线程基础学习笔记(六)

    condition_variable.wait.notifiy_one.notify_all的使用方式 condition_variable:条件变量 wait:等待被唤醒 notify_one:随机 ...

  2. opencv学习之读取图像-imread函数

    序 想要完整全面地学习opencv,仅凭阅读samples的示例源码是不够的.毕竟opencv是一个拥有非常多函数的程序库,所以在每学习一个函数时,芒果觉得有必要记录下来,分享给有需要的同学.于是,就 ...

  3. python网络编程-socket套接字通信循环-粘包问题-struct模块-02

    前置知识 不同计算机程序之间数据的传输 应用程序中的数据都是从程序所在计算机内存中读取的. 内存中的数据是从硬盘读取或者网络传输过来的 不同计算机程序数据传输需要经过七层协议物理连接介质才能到达目标程 ...

  4. Zabbix 配置钉钉脚本告警

    1.钉钉账号创建,并创建一个组,在组中添加一个机器人,然后记下webhook地址即可. 2.编辑一个报警脚本,此处使用的是BASH脚本,并覆盖我们的webhook地址到相应的位置. [root@loc ...

  5. IntelliJ IDEA 复杂的重构技巧

    IntelliJ IDEA 复杂的重构技巧(二) 转载 上次我说了一些 "复杂的重构技巧" ,讲的是一些使用 IntelliJ 的简单功能实现复杂的重构需求的技巧. 看到大家的反响 ...

  6. try catch和finally

    在C#中这三个关键字用于处理异常. 这三个关键字try是必定要用的,要不然就失去了意义.然后catch和finally可以不用但是要注意遵循原则. 存在一个或多个catch的时可以不用finally, ...

  7. oa_mvc_easyui_项目搭建及登录页面验证码(1)

    1.空项目的搭建,三层的搭建(各层之中的引用) webapp:bll,model,common bll:dal,model dal:model 2.SQL表 ItcastDb:T_UserInfo,T ...

  8. Hadoop学习之 HIVE 多用户模式安装

    一.启动hadoop 集群 1.启动zookeeper 集群   zkServer.sh start 2.在master.hadoop 机器上 ./start-all.sh 由于 start-all命 ...

  9. 本人亲测-C#常用工具类

    /* * HTTP接口工具类 */ public class HttpUitls { /* * get请求 */ public static string Get(string Url) { //Sy ...

  10. PostgreSQL 按照日期范围查询

    method 1 select * from user_info where create_date >= '2019-05-01' and create_date < '2019-08- ...