codevs 5969 [AK]刻录光盘x
• 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习。组委会觉得这个主意不错!可是组委会一时没有足够的空光盘,没法保证每个人都能拿到刻录上资料的光盘,怎么办呢?! • DYJ分析了一下所有营员的地域关系,发现有些营员是一个城市的,其实他们只需要一张就可以了,因为一个人拿到光盘后,其他人可以带着U盘之类的东西去拷贝啊! • 他们愿意某一些人到他那儿拷贝资料,当然也可能不愿意让另外一些人到他那儿拷贝资料,这与我们FJOI宣扬的团队合作精神格格不入!!! • 现在假设总共有N个营员(2<=N<=200),每个营员的编号为1~N。DYJ给每个人发了一张调查表,让每个营员填上自己愿意让哪些人到他那儿拷贝资料。当然,如果A愿意把资料拷贝给B,而B又愿意把资料拷贝给C,则一旦A获得了资料,则B,C都会获得资料。 • 现在,请你编写一个程序,根据回收上来的调查表,帮助DYJ计算出组委会至少要刻录多少张光盘,才能保证所有营员回去后都能得到夏令营资料?
先是一个数N,接下来的N行,分别表示各个营员愿意把自己获得的资料拷贝给其他哪些营员。即输入数据的第i+1行表示第i个营员愿意把资料拷贝给那些营员的编号,以一个0结束。如果一个营员不愿意拷贝资料给任何人,则相应的行只有1个0,一行中的若干数之间用一个空格隔开。
一个正整数,表示最少要刻录的光盘数。
5
2 4 3 0
4 5 0
0
0
1 0
1
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的更多相关文章
- codevs 原创抄袭题 5969 [AK]刻录光盘
题目描述 Description • 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会一时 ...
- 5969 [AK]刻录光盘
题目描述 Description • 在FJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会一时 ...
- 【CodeVS 3290】【NOIP 2013】华容道
http://codevs.cn/problem/3290/ 据说2013年的noip非常难,但Purpleslz学长还是AK了.能A掉这道题真心orz. 设状态$(i,j,k)$表示目标棋子在$(i ...
- codevs 1576 最长严格上升子序列
题目链接:http://codevs.cn/problem/1576/ 题目描述 Description 给一个数组a1, a2 ... an,找到最长的上升降子序列ab1<ab2< .. ...
- Codevs 2756 树上的路径
2756 树上的路径 时间限制: 3 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 给出一棵树,求出最小的k,使得,且在树中存在 ...
- P2835 刻录光盘
洛谷—— P2835 刻录光盘 题目描述 在JSOI2005夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习.组委会觉得这个主意不错!可是组委会 ...
- codevs 3289 花匠
题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...
- codevs 1082 线段树练习 3(区间维护)
codevs 1082 线段树练习 3 时间限制: 3 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 给你N个数,有两种操作: 1:给区 ...
- codevs 1285 二叉查找树STL基本用法
C++STL库的set就是一个二叉查找树,并且支持结构体. 在写结构体式的二叉查找树时,需要在结构体里面定义操作符 < ,因为需要比较. set经常会用到迭代器,这里说明一下迭代器:可以类似的把 ...
随机推荐
- 浅谈Linux kill命令
傻瓜常规篇: 首先,用ps查看进程,方法如下: $ ps -ef ……smx 1822 1 0 11:38 ? 00:00:49 gnome-terminalsmx ...
- Go语言中的切片(十)
go中数组的长度是固定的,且不同长度的数组是不同类型,这样的限制带来不少局限性.于是切片就来了,切片(Slice)是一个拥有相同类型元素的可变长度的序列.它是基于数组类型做的一层封装.它非常灵活,支持 ...
- Spring基于SchedulingConfigurer实现定时任务
Spring 基于 SchedulingConfigurer 实现定时任务,代码如下: import org.springframework.scheduling.annotation.Schedul ...
- C++练习 | 单链表的创建与输出(结构体格式)
#include <iostream> #include <stdio.h> using namespace std; #define OK 1 #define ERROR 0 ...
- leecode刷题(23)-- 合并两个有序链表
leecode刷题(23)-- 合并两个有序链表 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2-> ...
- 面试之什么是java虚拟机
java虚拟机体系结构 方法区 堆 java虚拟机栈 本地方法栈 方法区 java虚拟机编译的class文件中二进制数据类型解析数据存在方法区中 是所有线程共享 和存在数据的线程安全问题 当二个线程使 ...
- python发起post请求获取json数据使用requests方法
最普通的答案 我一直就觉得GET和POST没有什么除了语义之外的区别,自打我开始学习Web编程开始就是这么理解的 . 可能很多人都已经猜到了答案是: 1.GET 使用URL或Cookie传参.而POS ...
- 冒泡排序(java可直接跑,算法思想等小儿科不多说直接上代码)
import java.util.Arrays; /** *冒泡排序:时间复杂度O(N^2),空间复杂度O(1),稳定的排序 * 每趟确定一个元素的位置,所以需要arr.length趟排序, */pu ...
- 什么是DDoS攻击?
本文转载自知道创宇云安全的知乎回答:DDoS 的肉鸡都是哪来的? 说到DDoS攻击,我们就不得不说“肉鸡”. “肉鸡”可谓是DDoS攻击的核心大杀器,作为一个要发起DDoS攻击的黑客来说,没有肉鸡就是 ...
- deep_learning_Function_tensorflow_random_normal_initializer
函数原型:tf.random_normal_initializer(mean=0.0, stddev=1.0, seed=None, dtype=tf.float32) 返回一个生成具有正态分布的张量 ...