标签:规律 做了 strong 为什么 底部 距离 中间 根据 例子
题意:给一个序列,现在将其放在一个金字塔的底部,然后每一层比下一层少左右两个数,每一个数是下一层的距离他最近的三个数的平均数。现在要求最上面一个数是什么。
思路:根据去年grq
神仙讲的内容,我们需要首先二分这个最上面的数。
然后呢我们可以根据每一个位置上的数是否大于等于这个最上面的数来把序列变成一个0-1
的。
其中,1
代表这个数大于等于最上面的数。
那么,如果我们求出来的最上面的数是1
,就说明答案其实是大于等于现在二分出的数的,需要将lb
提升。否则需要将rb
下降。
下面就是如何计算0-1
序列答案的问题了。
我们开始找规律。
1
111
01111
0101110 -> 1
0
001
00011
0100110 -> 0
得到结论:
那么就可以做了:
我们找到最靠近中间的两个连续的数,如果他们在中线左边,那么就是先向上传递,然后斜向上直接传递到顶,即答案就是他们的值
否则就像第二个例子,只能够传递左侧与之对称的那个数(但是我不知道为什么他就传递不上去了。。。
这样就做完了。
标签:规律 做了 strong 为什么 底部 距离 中间 根据 例子
原文地址:https://www.cnblogs.com/denverjin/p/10902217.html