[CCC 2015 S4] Convex Hull

Luogu
IDLGP9813
Time1000ms
Memory128MB
DifficultyP4
2015CCC(加拿大)
给定一个 $n$ 个点,$m$ 条边的无向图,每条边有两个边权 $t_{i}$ 和 $h_{i}$。 你需要找到一条从 $s$ 到 $t$ 的路径,满足路径上边的 $h_{i}$ 之和 $<k$ 且 $t_{i}$ 之和最小,只需要输出这个最小值即可,如果无法找到满足条件的路径,输出 $-1$。 ## Input 第一行三个整数 $k,n,m$。 接下来 $m$ 行,每行四个整数 $u_{i},v_{i},t_{i},h_{i}$ 表示一条从 $u_{i}$ 到 $v_{i}$ 的路径,边权为 $\{t_{i},h_{i}\}$。 最后一行两个整数 $s,t$。 ## Output 当存在满足条件的路径时,输出一行一个整数表示满足条件的最小 $t_{i}$ 之和。 否则输出一行 $-1$。 [samples] ## Note **【数据范围】:** 对于 $20\%$ 的数据,$k = 1$,$2 \leq n \leq 200$。 对于另外 $20\%$ 的数据,$k = 1$,$2 \leq n \leq 2 \times 10^{3}$。 对于 $100\%$ 的数据,$0 \leq h_{i} \leq 200$,$1 \leq t_{i} \leq 10^{5}$,$1 \leq k \leq 200$,$2 \leq n \leq 2 \times 10^{3}$,$1 \leq m \leq 10^{4}$,$s \neq t$。
Samples
Input #1
10 4 7
1 2 4 4
1 3 7 2
3 1 8 1
3 2 2 2
4 2 1 6
3 4 1 1
1 4 6 12
1 4
Output #1
7
Input #2
3 3 3
1 2 5 1
3 2 8 2
1 3 1 3
1 3
Output #2
-1
API Response (JSON)
{
  "problem": {
    "name": "[CCC 2015 S4] Convex Hull",
    "description": {
      "content": "给定一个 $n$ 个点,$m$ 条边的无向图,每条边有两个边权 $t_{i}$ 和 $h_{i}$。 你需要找到一条从 $s$ 到 $t$ 的路径,满足路径上边的 $h_{i}$ 之和 $<k$ 且 $t_{i}$ 之和最小,只需要输出这个最小值即可,如果无法找到满足条件的路径,输出 $-1$。",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 131072
    },
    "difficulty": {
      "LuoguStyle": "P4"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP9813"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "给定一个 $n$ 个点,$m$ 条边的无向图,每条边有两个边权 $t_{i}$ 和 $h_{i}$。\n\n你需要找到一条从 $s$ 到 $t$ 的路径,满足路径上边的 $h_{i}$ 之和 $<k$ 且 $t_{i}$ 之和最小,只需要输出这个最小值即可,如果无法找到满足条件的路径,输出 $-1$。\n\n## Input\n\n第一行三个整数 $k,n,m$。\n\n接下来 $m$ 行,每行四个整数 $u_{...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments