题目

Description
下课了,还沉浸在阶乘世界的壕壕被斑主任交到了办公室。
“壕壕,你的寒假作业呢?还没做吧?你家里人知道吗?”真相被拆穿,惊呆了的壕壕只好向班主任坦白自己玩了一个寒假,作业还没有开始做。班主任决定给壕壕最后一次机会,让他给每一份作业设置一个截止期限,只要壕壕每份作业在对应的期限前完成,就不会受到惩罚。每当壕壕做作业的时候,他的强迫症就会发作。壕壕会对作业定下一些规则,有的作业只能在其他某些作业完成之后才能开始做。比如说:壕壕规定数学作业要在语文作业前完成那么语文作业就不会在数学作业前做。此外,壕壕的规则不会产生环,也就是说,数学作业要在语文作业前完成、语文作业要在英语作业前完成、英语作业要在数学作业前完成这种情况不会出现,否则壕壕就会放弃治疗,从而受到主任的惩罚。由于壕壕精力充沛,所以壕壕不会休息,只会不停地做作业。但同时他也是一个普通人所以他同一时刻不能做两份或以上作业壕壕想对班主任说每份作业最晚能在什么时刻完成,这样无论他怎么安排作业的顺序都不会受到惩罚。但同时,班主任也想知道每份作业最早能在什么时刻完成,从而可以更好地催促壕壕完成作业。班主任想知道自己需要的答案,于是他求助于你一一全班最聪明机智的同学。同时壕壕也想知道自己需要的答案,于是他求助于你一一他的同桌。你能告诉他们吗?

Sample Input

4 4
3 4 5 6
1 2
1 3
2 4
3 4

Sample Output

3 3
7 12
8 12
18 18

思路

如果要最快完成第 i 份作业,那么需要完成 i 的前继那些作业,那么最优方案即为优先处理 i 的前驱。
如果是要最慢完成第 i 份作业,最优方案则为除了它的后继外所有的作业都做。
那么跑两遍 dfs 处理对于每个 i 的前驱 & 后继就可以了。

#include <stdio.h>
#include <string.h>
#define re register
using namespace std;int fast, slow;
void search1(int x);
void search2(int x);const int maxn=2005;
int n, m;
int a, b;
int Time[maxn], Sum (0);
int son[maxn][maxn];
int fa[maxn][maxn];
bool flag[maxn];
int main() {scanf("%d %d", &n, &m);for (re int i=1; i<=n; i++) {scanf("%d", &Time[i]);Sum+=Time[i];}for (re int i=1; i<=m; i++) {scanf("%d %d", &a, &b);son[b][++son[b][0]]=a;fa[a][++fa[a][0]]=b;}for (re int i=1; i<=n; i++) {fast=0;memset(flag, 0, sizeof flag);search1(i);slow=-Time[i];memset(flag, 0, sizeof flag);search2(i);printf("%d %d\n", fast, Sum-slow);}return 0;
}void search1(int x) {if (flag[x]) return ;fast+=Time[x];flag[x]=1;for (re int i=1; i<=son[x][0]; i++) {search1(son[x][i]);}
}void search2(int x) {if (flag[x]) return ;slow+=Time[x];flag[x]=1;for (re int i=1; i<=fa[x][0]; i++) {search2(fa[x][i]);}
}

GDKOI2014「壕壕的寒假作业」相关推荐

  1. 「PS-CC2019新版教程-有作业」选区工具-基础篇

    上期外面讲了CC2019的画板工具的使用方法及用途,今天我们来了解"选区工具",选区工具一共包括:矩形选框工具/椭圆选框工具/单行选框工具/单列选框工具四个小工具! 选框工具,在以 ...

  2. 【GDKOI2014】JZOJ2020年8月13日提高组T3 壕壕的寒假作业

    [GDKOI2014]JZOJ2020年8月13日提高组T3 壕壕的寒假作业 题目 Description Input Output 输出n行.第i行输出两个整数,分别表示第i份作业最早完成的时刻以及 ...

  3. ssh作业批改系统_如何看待「全国至少十省份叫停家长批改作业」?能否从根源解决问题?...

    家长是否应该批改作业连日来引发不少网友讨论. 11月10日,辽宁省教育厅在其官网公布<辽宁省义务教育阶段学生作业管理"十要求">,其中明确指出,教师必须亲自批改作业,严 ...

  4. 语言栈十进制转十六进制_十进制数转二进制、八进制、十六进制等任意进制_C语言「抄作业」...

    C语言「抄作业」系列之十进制数转二进制.八进制.十六进制等任意进制 PS: 写这篇时发现了潜藏多年的Bug.在修复时,无意间发现,本大仙当年的Bug代码竟然「流传甚广」--(别以为改了下变量名,就能骗 ...

  5. 投资时如何更好地「抄作业」?

    很多人开始投资都是从「抄作业」开始的,我在 2005 年买的第一只股票应该是「峨眉山A」,就是抄的当时天涯股票论坛里一个大V(对了,那时还不叫大V)的作业.我不知道这只股票是干嘛的,也不知道值多少钱, ...

  6. 图灵奖得主吐槽中国高校「重科研,轻教育」怪象!高校教师评价体系是元凶?...

    来源:知乎 转自:新智元 11月1号,在第四届世界顶尖科学家论坛开幕式上,图灵奖得主约翰·霍普克罗夫特就中国的本科生教育这个话题谈了谈自己的看法. 来源:四川观察 视频里约翰·霍普克罗夫特教授想表达的 ...

  7. 【翻译】西川善司「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密,前篇(1)...

    http://www.4gamer.net/games/216/G021678/20140703095/   新连载「实验做出的游戏图形」,是聚焦在特定游戏的图形上, 对它的结构和使用的技术解说为主旨 ...

  8. 西乔说要把「神秘的程序员们」当做一个文化产品来做

    西乔何许人也 她是「神秘的程序员们」系列漫画的原创作者,每篇漫画都能戳中程序员的笑点和泪点,经常有10W+的阅读量,可以说是最懂程序员的漫画作者:她做设计也管理项目,为FT中文网和纽约时报中文网重构或 ...

  9. 「BUAA OO Unit 1 HW4」第一单元总结

    「BUAA OO Unit 1 HW4」单元总结 Part 0 写在开头 对我来说,特别是第二次开始,每到一次作业互测截止之时,出强测结果之时,if(强测<90) 心率平稳->心跳加快-& ...

最新文章

  1. Python爬取近十万条程序员招聘数据,告诉你哪类人才和技能最受热捧! | 原力计划...
  2. 云服务器怎么添加虚拟内存,云服务器怎么添加虚拟内存
  3. Java总复习(一)
  4. python第三方库排行-scikit-learn: Python强大的第三方库
  5. NetBeans IDE 实现php开发自动上传到开发服务器 的设置
  6. OpenGL显卡编程
  7. 深度学习网络训练中出现nan的原因分析
  8. Scrapy相关命令
  9. 自己制作的ORMap框架终于完成的差不多了。
  10. 人脸识别常用数据集大全
  11. 网狐6603全部架设过程棋牌源码下载搭建教程
  12. codeforces每日5题(均1500)-第二十二天
  13. 时钟系统(NTP子母钟系统)如何为高铁系统保驾护航
  14. NIOS ii 实战篇 --- 按键控制LED
  15. 小知识·adb安装和使用方法
  16. 《人人都是产品经理》之我也是产品经理
  17. 6.6 PowerBI系列之DAX函数专题 -调节器TREATAS动态建立关系
  18. docker 镜像制作
  19. 重温儿时经典《坦克大战》
  20. Servlet转发和重定向的异同

热门文章

  1. xp系统禁用wmi服务器,xp中哪些服务是可以关闭的
  2. [POI2007]ZAP-Queries 莫比乌斯反演(模板)
  3. EFI和Legacy启动方式
  4. 毕业生之瞳——《技术之瞳——叩开阿里之门之在线笔试》
  5. rails 密码加密
  6. 萌妹子Python入门指北(二)
  7. 你创建微信公众账号了吗?别闲着,来做微信营销吧
  8. 【CSS3】text-shadow/text-overflow,边框图片,透明度,小米轮播图子菜单另一种实现,覆盖准则
  9. 牛客 刺客信条 (bfs、dijkstra)+堆优化、dfs三种求解
  10. openwrt配置虚拟多wan