prayer OJ M

这一题是一把辛酸泪啊。。。一个半小时ac的。。。

首先,考虑到如果要一条路径最小,那么肯定是没有值大于等于3的

显然如果有一个大于等于3的,那么这个数把路径分成两份,一份有k个,一个n-k-1个

那么设j=max(两个数),则j>=n/2(向下取整)

假设其他数字都是1

那么显然还是j个的哪一段好

而且,一个路径中1越多越好

先考虑只有1的情况

把所有只含有1的路径找出来,计算长度取最大值就是一个答案

很显然路径最多再加一个2

假如说这个最长的路径是j个数字组成的

那么必然在这个路径(或者长度等于这个路径)的首尾加上这个2

而且这个2后面还需要一个路径全为1,而且长度也是最长的长度的

那么这个就是第二种可能

考虑到某些同志要复制代码,所以就不贴代码了

要代码的请询问QQ:417288081,已经屏蔽的2385612416,如果还屏蔽的2200425329

原文地址:https://www.cnblogs.com/xuanyiming/p/7563231.html