#P14442. [JOISC 2013] 礼物 / Presents

[JOISC 2013] 礼物 / Presents

题目描述

JOI 学园每年在白色情人节期间会举行点心交换会。今年的交换会有 NN 名学生参加,学生编号为 11NN。每名学生为除自己外的另一名学生制作饼干或蛋糕中的一种。编号为 ii 的学生向编号为 AiA_i 的学生赠送 BiB_i 个自制的点心。

不同学生对收到的点心种类有不同偏好:有的希望收到与自己制作的种类相同的点心以进行口味研究,有的则希望收到不同种类的点心(若自制饼干则希望收到蛋糕,自制蛋糕则希望收到饼干)以增添乐趣。编号为 ii 的学生每收到一个与自己制作种类相同的点心,其 喜悦值 增加 CiC_i 点;每收到一个不同种类的点心,其 喜悦值 增加 DiD_i 点。当 NN 名学生合理选择制作饼干或蛋糕时,他们的 喜悦值 总和最大可达多少?

任务

给定学生赠送点心的对象、数量及喜悦值信息,编写程序计算 喜悦值 总和的最大值。

输入格式

从标准输入读取以下输入数据:

  • 11 行包含整数 NN,表示 JOI 学园的学生人数。
  • 后续 NN 行中,第 ii 行(1iN1 \leq i \leq N)包含以空格分隔的整数 Ai,Bi,Ci,DiA_i, B_i, C_i, D_i,表示编号 ii 的学生向编号 AiA_i1AiN1 \leq A_i \leq NAiiA_i \neq i)的学生赠送 BiB_i 个点心,且每收到一个同种类点心获得 CiC_i 点喜悦值,每收到一个不同种类点心获得 DiD_i 点喜悦值。

输出格式

向标准输出输出一行,表示 NN 名学生 喜悦值 总和的最大值。

7
3 3 6 5
7 2 8 8
4 5 3 9
1 8 7 2
1 8 8 4
3 7 4 5
2 5 1 2
257

提示

样例 1 解释

在此示例中,例如,当编号 1,2,5,61, 2, 5, 6 的学生制作饼干,编号 3,4,73, 4, 7 的学生制作蛋糕时:

  • 编号 11 的学生收到 88 个饼干和 88 个蛋糕,喜悦值8888
  • 编号 22 的学生收到 55 个蛋糕,喜悦值4040
  • 编号 33 的学生收到 1010 个饼干,喜悦值9090
  • 编号 44 的学生收到 55 个蛋糕,喜悦值3535
  • 编号 55 的学生未收到任何点心,喜悦值00
  • 编号 66 的学生未收到任何点心,喜悦值00
  • 编号 77 的学生收到 22 个饼干,喜悦值44

此时 喜悦值 总和为 257257

限制

所有输入数据满足以下条件:

  • 2N1000002 \leq N \leq 100\,000
  • 1Bi10000001 \leq B_i \leq 1\,000\,000 (1iN1 \leq i \leq N)
  • 1Ci10000001 \leq C_i \leq 1\,000\,000 (1iN1 \leq i \leq N)
  • 1Di10000001 \leq D_i \leq 1\,000\,000 (1iN1 \leq i \leq N)

子任务

子任务 1 [10 分]

  • 满足 N16N \leq 16

子任务 2 [20 分]

  • 满足 N5000N \leq 5\,000

子任务 3 [70 分]

  • 无额外限制

翻译由 DeepSeek V3 完成