#8372. 追梦笼式网球 (padelprizepursuit)

0
    ID: 8372 传统题 文件IO:padelprizepursuit 30000ms 256MiB 尝试: 5 已通过: 2 难度: 10 上传者: 标签>CSP-J复赛模拟赛1CSP-J模拟赛

追梦笼式网球 (padelprizepursuit)

Day 1 Problem B.

题面译自 EGOI2023 ppp。

题目描述

有 NN 个编号为 00 到 N−1N-1 的选手参加一场 MM 天的笼式网球锦标赛。每天恰好进行一次比赛。在锦标赛中共颁发 MM 块奖牌,每场比赛颁发一块新奖牌。在第 ii 天的比赛中(0≤i≤M−10\le i\le M-1),两名编号分别为 xix_i 和 yiy_i 的选手参加。比赛中发生如下事件:

  • 选手 xix_i 打败选手 yiy_i。
  • 一个新的奖牌授予给获胜者 xix_i。
  • 失败者所有现有的奖牌都授予给获胜者。

在第 MM 天(最后一场比赛结束后一天)举行颁奖典礼。在颁奖典礼上,所有奖牌被收集起来,并授予给持有该奖牌时间最长的选手。具体地,在第 MM 天,奖牌 ii 授予给持有奖牌 ii 最多个晚上的选手(不必须连续持有)。如果两个或更多选手持有一个奖牌同样多晚上,奖牌授予给其中编号最小的选手。

你的任务是求出颁奖典礼中,每位选手被授予多少奖牌。

输入格式

第一行两个整数 N,MN,M,表示选手数和比赛数。

接下来 MM 行,每行两个整数 xi,yix_i,y_i,表示第 ii 天的比赛中,选手 xix_i 打败选手 yiy_i。

输出格式

一行 NN 个整数,第 kk 个整数表示颁奖典礼中,第 kk 位选手被授予的奖牌数。

样例

样例

3 4
0 1
2 1
1 0
2 1
1 1 2
3 7
0 1
0 2
2 0
0 1
1 0
2 0
0 2
2 2 3
6 10
2 5
3 0
4 2
0 1
4 3
2 4
0 3
0 2
5 2
5 0
5 0 1 1 1 2

提示

样例 11 解释

下图展示了样例 11 中锦标赛期间奖牌的归属。当选手 11 在第三天被打败时,她的所有奖牌都被授予给选手 22。

数据范围与子任务

全部数据

  • 2≤N≤2×1052 \le N \le 2\times 10^5
  • 1≤M≤2×1051 \le M \le 2\times 10^5
  • 0≤xi,yi≤N−10 \le x_i, y_i \le N-1,且 xi≠yix_i \ne y_i

子任务

子任务 分值 约束
一 12 N=2N=2
二 16 N,M≤2×103N, M \le 2\times 10^3
三 15 第 ii 场比赛的获胜者参加了第 i+1i+1 场比赛,依赖子任务一
四 20 在第 ii 场比赛时,xix_i 有至少和 yiy_i 一样多的奖牌
五 22 一旦一名选手被打败,她永远不会再次参赛
六 15 无特殊限制,依赖子任务二、三、四、五