来严格证明一下
就是证明每一次操作中,中间的牛一定至少有一头牛的身高与两端相等,所以每次都要进行操作
假设这次操作是说\(l\)和\(r\)可以互相看见,那么我们就要将\([l+1,r-1]\)的身高减一
从最开始,\([l,r]\)的身高都是相同的。在这次操作之前,由于是不会出现矛盾的,所以影响只有四种操作会影响这个区间(下面区间都是我们要减一的区间,两端点不是可以互相看到的牛,左端点减一,右端点加一才是可以互相看到的牛)
第一种为\([k,r-1]\),其中\(k≤l\)
第二种为\([l+1,k]\),其中\(k≥r\)
第三种为\([p,q]\),其中\(p≤l,q≥r\)
第四种为\([p,q]\),这个区间就是被包含在\([l+1,r-1]\)中的。注意到这种区间一定不会出现相交,实际上,这四种区间都不会出现相交
我们从最开始的操作只经过这四种操作达到现在的状态,用数学归纳法不难证明结论
标签:减一,端点,区间,操作,最高,身高,四种 From: https://www.cnblogs.com/dingxingdi/p/18133809