#P2654. 魔法链表

魔法链表

题目内容

给定一个数字 mm ,将一堆数字中的每一个按值(假定值为 nn )进行运算分成 mm 类,运算公式为 (2n+1)(2*n+1)%m ,算出结果值为关键字。相同关键字的数字组成一个链表,所以共有 mm 条链表,每条链表中的值占据一行,根据 mm 条链表的元素个数从小到大顺序排列(个数相同时,关键字小的排在前面),先假定对于一个给定满足上述条件的数字已按规则排列完全后,在此基础上做一项操作,即把所有尾数是 xx 的值 nn 加上一个值 yy ,调整链表组成,插入的元素要求放在链表的末尾,使得变化后的链表依然满足上述条件,具体满足如下两点:

(1) 同一个链表中的元素值关健字一样

(2) 链表间的排列顺序:按元素个数从小到大排列(个数相同时,关键字小的排在前面)

调整链表组成时,如果让放到原链表,则只更新值即可,而且不需要调整顺序(即:不需要移动到链表末尾)。只有调整到其他链表时才需要。