题目链接:http://contest-hunter.org:83/contest/0x10「基本数据结构」例题/1202 蚯蚓
这个题真的是~~
一言难尽 我真的无语了。
先说一下这个题的基本思路吧。
这个题目是个队列的题目。
假定序列为
a1 a2 a3 a4 a5 a6 a7 a8 a9
并在此演示样例中 此序列是一个非降序的序列。
第一秒选a1 得到两个新的长度分别为 m1 = a1 * u / v 和 m2 = a1 - m1;同时,队列中的其他元素的长度都增加了q。(这里需要注意一下,对于一个序列来说,除了其中两个元素,其他元素都增加了q。那就可以用维持一个偏移量delta来表示整个数组的偏移量。而其他两个元素则需要减去q)。所以,这里的m1 -= delta m2-= delta;
第二秒选a2 得到两个新的长度分别为 n1 = (a2 + delta) * u / v - delta1和 n2 = a2 + delta- n1 - delta1; 注意,在执行第二秒的时候 m1 和 m2 的长度是要增加q的。
所以,在第二秒执行完后,大致情况为
m1 = a1 * u / v - delta + delta1 m2 = a1 - m1 - delta + delta1;
n1 = (a2 +