[蓝桥杯 2024 省 A] 团建

Luogu
IDLGP10388
Time3000ms
Memory256MB
DifficultyP4
2024哈希 hashing蓝桥杯省赛
小蓝正在和朋友们团建,有一个游戏项目需要两人合作,两个人分别拿到一棵大小为 $n$ 和 $m$ 的树,树上的每个结点上有一个正整数权值。 两个人需要从各自树的根结点 $1$ 出发走向某个叶结点,从根到这个叶结点的路径上经过的所有结点上的权值构成了一个正整数序列,两人的序列的最长公共前缀即为他们的得分。给出两棵树,请计算两个人最多的得分是多少。 ## Input 输入的第一行包含两个正整数 $n, m $,用一个空格分隔。 第二行包含 $n$ 个正整数 $c_1, c_2,\cdots , c_n $,相邻整数之间使用一个空格分隔,其中 $c_i$ 表示第一棵树结点 $i$ 上的权值。 第三行包含 $m$ 个正整数 $d_1, d_2,\cdots, d_m$,相邻整数之间使用一个空格分隔,其中 $d_i$ 表示第二棵树结点 $i$ 上的权值。 接下来 $n - 1$ 行,每行包含两个正整数 $u_i , v_i$ 表示第一棵树中包含一条 $u_i$ 和 $v_i$ 之间的边。 接下来 $m - 1$ 行,每行包含两个正整数 $p_i , q_i$ 表示第二棵树中包含一条 $p_i$ 和 $q_i$ 之间的边。 ## Output 输出一行包含一个整数表示答案。 [samples] ## Note 对于 $20\%$ 的评测用例,$1 ≤ n, m ≤ 500 $; 对于所有评测用例,$1 ≤ n, m ≤ 2 × 10^5,1 ≤ c_i , d_i ≤ 10^8 ,1 ≤ u_i , v_i ≤ n , 1 ≤ p_i , q_i ≤ m $,对于任意结点,其儿子结点的权重互不相同。
Samples
Input #1
2 2
10 20
10 30
1 2
2 1
Output #1
1
Input #2
5 4
10 20 30 40 50
10 40 20 30
1 2
1 3
2 4
3 5
1 2
1 3
3 4
Output #2
2
API Response (JSON)
{
  "problem": {
    "name": "[蓝桥杯 2024 省 A] 团建",
    "description": {
      "content": "小蓝正在和朋友们团建,有一个游戏项目需要两人合作,两个人分别拿到一棵大小为 $n$ 和 $m$ 的树,树上的每个结点上有一个正整数权值。   两个人需要从各自树的根结点 $1$ 出发走向某个叶结点,从根到这个叶结点的路径上经过的所有结点上的权值构成了一个正整数序列,两人的序列的最长公共前缀即为他们的得分。给出两棵树,请计算两个人最多的得分是多少。",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 3000,
      "memory_limit": 262144
    },
    "difficulty": {
      "LuoguStyle": "P4"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP10388"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "小蓝正在和朋友们团建,有一个游戏项目需要两人合作,两个人分别拿到一棵大小为 $n$ 和 $m$ 的树,树上的每个结点上有一个正整数权值。  \n两个人需要从各自树的根结点 $1$ 出发走向某个叶结点,从根到这个叶结点的路径上经过的所有结点上的权值构成了一个正整数序列,两人的序列的最长公共前缀即为他们的得分。给出两棵树,请计算两个人最多的得分是多少。\n\n## Input\n\n输入的第一行包含两个正整数 ...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments