#abc450b. Split Ticketing

Split Ticketing

【题目描述】

NN 个车站 1,2,,N1, 2, \dots, N,它们按此顺序从西向东排成一条直线。
AtCoder 铁路的列车依次经过这 NN 个车站,自西向东运行。

对于任意满足 1i<jN1 \le i < j \le N 的两个整数 i,ji, j,从车站 ii 上车并在车站 jj 下车的费用为 Ci,jC_{i,j}

请判断是否存在三个整数 a,b,ca, b, c 满足以下条件:

  • 1a<b<cN1 \le a < b < c \le N
  • 从车站 aa 直接坐到车站 cc 的费用,大于 先从车站 aa 坐到车站 bb、再从车站 bb 坐到车站 cc 的总费用。
    即:Ca,c>Ca,b+Cb,cC_{a,c} > C_{a,b} + C_{b,c}

如果存在这样的三元组 (a,b,c)(a, b, c),输出 Yes;否则,输出 No

【输入格式】

输入从标准输入按以下格式给出:

$$\begin{aligned} & N \\ & C_{1,2} C_{1,3} … C_{1,N}\\ & C_{2,3} … C_{2,N}\\ & ⋮\\ & C_{N-1,N} \end{aligned}$$

即:

  • 第一行包含一个整数 NN
  • 接下来 N1N-1 行,第 ii 行(1iN11 \le i \le N-1)包含 NiN - i 个整数,依次为 Ci,i+1,Ci,i+2,,Ci,NC_{i,i+1}, C_{i,i+2}, \dots, C_{i,N}

【输出格式】

如果存在满足条件的三元组 (a,b,c)(a, b, c),输出一行 Yes;否则,输出一行 No

【约束条件】

  • 3N1003 \le N \le 100
  • 1Ci,j1091 \le C_{i,j} \le 10^9
  • 所有输入值均为整数

【样例输入 1】

3
45 450
45

【样例输出 1】

Yes

【样例 1 解释】

选择 (a,b,c)=(1,2,3)(a, b, c) = (1, 2, 3),则:

  • $C_{a,b} + C_{b,c} = C_{1,2} + C_{2,3} = 45 + 45 = 90$
  • Ca,c=C1,3=450C_{a,c} = C_{1,3} = 450

由于 90<45090 < 450,满足条件,因此输出 Yes

【样例输入 2】

4
25 40 65
30 55
25

【样例输出 2】

No

【样例 2 解释】

无论怎样选择 (a,b,c)(a, b, c),都无法满足 Ca,c>Ca,b+Cb,cC_{a,c} > C_{a,b} + C_{b,c},因此输出 No