AT_abc341_f.[ABC341F] Breakdown

提高+/省选-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个包含 NN 个顶点和 MM 条边的简单无向图。对于 i=1,2,…,Mi=1,2,\ldots,M,第 ii 条边连接顶点 uiu_i 和顶点 viv_i。另外,对于 i=1,2,…,Ni=1,2,\ldots,N,顶点 ii 被分配了一个正整数 WiW_i,并且在顶点 ii 上放置了 AiA_i 个棋子。

只要图上还存在棋子,就不断重复以下操作:

  • 首先,从图上的棋子中选择一个并将其移除,设该棋子原本所在的顶点为 xx。
  • 从与 xx 相邻的若干个顶点(可以为空)组成的集合 SS 中选择一个,要求 ∑y∈SWy<Wx\sum_{y\in S} W_y < W_x,然后在 SS 中的每个顶点各放置 11 个棋子。

请输出可以进行操作的最大次数。

另外,可以证明无论如何操作,经过有限次操作后,最终图上不会剩下棋子。

输入格式

输入以如下格式从标准输入给出。

NN MM
u1u_1 v1v_1
u2u_2 v2v_2
⋮\vdots
uMu_M vMv_M
W1W_1 W2W_2 …\ldots WNW_N
A1A_1 A2A_2 …\ldots ANA_N

输出格式

请输出答案。

输入输出样例

  • 输入#1

    6 6
    1 2
    2 3
    3 1
    3 4
    1 5
    5 6
    9 2 3 1 4 4
    1 0 0 0 0 1

    输出#1

    5
  • 输入#2

    2 1
    1 2
    1 2
    0 0

    输出#2

    0
  • 输入#3

    10 20
    4 8
    1 10
    1 7
    5 9
    9 10
    8 10
    7 5
    1 4
    7 3
    8 7
    2 8
    5 8
    4 2
    5 1
    7 2
    8 3
    3 4
    8 9
    7 10
    2 3
    25 5 1 1 16 5 98 3 21 1
    35 39 32 11 35 37 14 29 36 1

    输出#3

    1380

说明/提示

限制条件

  • 所有输入的值均为整数。
  • 2≤N≤50002 \leq N \leq 5000
  • 1≤M≤min⁡{N(N−1)/2,5000}1 \leq M \leq \min\{N(N-1)/2, 5000\}
  • 1≤ui,vi≤N1 \leq u_i, v_i \leq N
  • ui≠viu_i \neq v_i
  • i≠j  ⟹  {ui,vi}≠{uj,vj}i \neq j \implies \{u_i, v_i\} \neq \{u_j, v_j\}
  • 1≤Wi≤50001 \leq W_i \leq 5000
  • 0≤Ai≤1090 \leq A_i \leq 10^9

样例解释 1

在下述说明中,各顶点上的棋子数量用数列 A=(A1,A2,…,AN)A=(A_1, A_2, \ldots, A_N) 表示。初始时,A=(1,0,0,0,0,1)A=(1,0,0,0,0,1)。考虑按照以下步骤进行操作:

  • 从顶点 11 移除一个棋子,并在顶点 2,32,3 各放置一个棋子。此时 A=(0,1,1,0,0,1)A=(0,1,1,0,0,1)。
  • 从顶点 22 移除一个棋子。此时 A=(0,0,1,0,0,1)A=(0,0,1,0,0,1)。
  • 从顶点 66 移除一个棋子。此时 A=(0,0,1,0,0,0)A=(0,0,1,0,0,0)。
  • 从顶点 33 移除一个棋子,并在顶点 22 放置一个棋子。此时 A=(0,1,0,0,0,0)A=(0,1,0,0,0,0)。
  • 从顶点 22 移除一个棋子。此时 A=(0,0,0,0,0,0)A=(0,0,0,0,0,0)。

上述操作共进行了 55 次,这是可以进行操作次数的最大值。

样例解释 2

在本输入样例中,初始时图上没有任何棋子。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页