长春理工大学第十四届程序设计竞赛(重现赛)L
2024-08-31 18:34:00
L.Homework Stream
题目链接:https://ac.nowcoder.com/acm/contest/912/L
题目
作为大珩班尖子生,小r每天有很多作业要完成,例如工图、工图和工图。
很显然,做作业是要有顺序的。作业之间存在依赖关系,某一个作业没做完,就不能开始做另一个作业。例如,汇编作业依赖于C语言作业,因为小r可以用C语言的编译结果反编译出他想要的汇编程序。
现在已知有n种作业(编号为1~n)和m对作业之间的依赖关系,小r想知道编号为k的作业依赖于哪些作业,以及哪些作业依赖于编号为k的作业。
输入描述:
第一行输入三个正整数n,m,k(1≤n,m,k≤106)
,含义见题目描述。
接下来m行,每行两个正整数xi,yi(1≤xi,yi≤106),代表作业xi依赖于yi
。
输入保证不存在重复的依赖关系,也不存在环形的依赖关系。
输出描述:
输出共两行。
第一行输出编号为k的作业依赖的作业编号,每个数用空格隔开。
第二行输出依赖于编号为k的作业的编号,每个数也用空格隔开。
每行输出的作业编号顺序任意。
示例1
输入
5 4 3
3 1
3 2
4 3
5 3
输出
1 2
4 5
示例2
输入
3 2 1
2 1
3 2
输出
2
说明
如果没有依赖或被依赖的作业,也要输出空行(即必须一共输出两个换行符)
备注:
依赖关系不满足传递性,即你无需考虑间接的依赖关系。
思路
水题,判断存入数组就行
#include<bits/stdc++.h>
using namespace std;
int main()
{ int n,m,k;
vector<int>sh,ch;
while(cin>>n>>m>>k)
{
int a,b;
for(int i=0;i<m;i++)
{
cin>>a>>b;
if(a==k)
sh.push_back(b);
else if(b==k)
ch.push_back(a);
}
if(!sh.size())
cout<<endl;
if(sh.size())
{
copy(sh.begin(),sh.end(),ostream_iterator<int>(cout," "));
cout<<endl;
}
if(!ch.size())
cout<<endl;
if(ch.size())
{
copy(ch.begin(),ch.end(),ostream_iterator<int>(cout," "));
cout<<endl;
}
sh.clear();
ch.clear();
}
return 0;
}
最新文章
- C#
- Nodejs之MEAN栈开发(四)---- form验证及图片上传
- 【英语魔法俱乐部——读书笔记】 3 高级句型-简化从句&;倒装句(Reduced Clauses、Inverted Sentences) 【完结】
- Javascript use strict模式和对象
- HTTP 简介
- C#模仿360安全卫士玻璃按钮,不闪烁,背景切换效率快
- Validate Binary Search Tree——LeetCode
- google浏览器的安装
- makefile学习笔记(一)
- MySQL基础使用
- XMLHttpRequest.withCredentials 解决跨域请求头无Cookie的问题
- 埋锅。。。BZOJ1004-置换群+burnside定理+
- Spring 使用介绍(三)—— 资源
- mac 环境变量
- WireShark如何抓取本地localhost的包
- 启动 idea 编译报错 kotlin
- 并行网络爬虫(C++实现)
- scrapy-redis的使用与解析
- <;offer4>; 04_FindInPartiallySortedMatrix
- Python读取mdb文件以及shell检测
热门文章
- MySQL复制slave服务器死锁案例
- Windows中点击“关闭”button发生了什么?
- python3使用多代理访问网站
- 32位与64位、单精度(single-precision)与双精度(double-precision)
- WPF 窗体中获取键盘和鼠标无操作时的超时提示
- opengl编程指南 第七版 源代码bug Page35 lines.c 红宝书
- Http请求格式(在Linux下使用telnet亲测,通过这篇我才明白)
- 从Header中获得信息
- Win8 Metro(C#)数字图像处理--2.60部分彩色保留算法
- 微信小程序把玩(三十九)navigation API