[POI 2002] 商务旅行

Luogu
IDLGP8855
Time100ms
Memory128MB
DifficultyP4
2002POI(波兰)最近公共祖先 LCA
某地首都的商人要经常到其他城镇去做生意,他们会按自己的路线去走。 有 $N$ 个城镇,首都编号为 $1$。商人从首都出发,其他各城镇之间都有道路连接。 任意两个城镇之间如果有直连道路,在他们之间行驶需要花费单位时间。如果从首都出发,能到达任意一个城镇。 请你求出商人最短的旅行时间。 ## Input 第一行有一个整数 $N$,为城镇的数目。 接下来 $N-1$ 行,每行两个整数 $a$ 和 $b$,表示城镇 $a$ 和城镇 $b$ 有公路连接。 接下来一个整数 $M$,然后 $M$ 行,每行有该商人需要顺次经过的各城镇编号。 ## Output 一行,输出商人最短的旅行时间。 [samples] ## Note 数据范围:$1 \le N \le 30000$。**保证公路网络不会存在环。**
Samples
Input #1
5
1 2
1 5
3 5
4 5
4
1
3
2
5
Output #1
7
API Response (JSON)
{
  "problem": {
    "name": "[POI 2002] 商务旅行",
    "description": {
      "content": "某地首都的商人要经常到其他城镇去做生意,他们会按自己的路线去走。 有 $N$ 个城镇,首都编号为 $1$。商人从首都出发,其他各城镇之间都有道路连接。 任意两个城镇之间如果有直连道路,在他们之间行驶需要花费单位时间。如果从首都出发,能到达任意一个城镇。 请你求出商人最短的旅行时间。",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 100,
      "memory_limit": 131072
    },
    "difficulty": {
      "LuoguStyle": "P4"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP8855"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "某地首都的商人要经常到其他城镇去做生意,他们会按自己的路线去走。\n\n有 $N$ 个城镇,首都编号为 $1$。商人从首都出发,其他各城镇之间都有道路连接。\n\n任意两个城镇之间如果有直连道路,在他们之间行驶需要花费单位时间。如果从首都出发,能到达任意一个城镇。\n\n请你求出商人最短的旅行时间。\n\n## Input\n\n第一行有一个整数 $N$,为城镇的数目。\n\n接下来 $N-1$ 行,每行两个整数 $a$...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments