寒假过后,小 I 回到学校,发现自己忘记了自行车锁的密码,于是请你帮忙。
小 I 自行车上的密码锁有 个拨圈,每个拨圈有 ()格。密码锁上的每一格都包含一个正整数,其中第 个拨圈的第 格上的正整数为 。
(一个锁的例子,其中 ,每列表示一个拨圈,拨圈的格子从上往下编号。)
你可以对每个拨圈拨若干次(也可以不拨),每拨一次拨圈,它的格子就会进行一次轮换。形式化地,拨第 个拨圈一次,则会让第 个拨圈上第 格的数字移动到第 格,其他拨圈不动。
(一个拨动拨圈的例子,对左侧的锁拨一次第二个拨圈得到右侧的锁。)
为了方便记忆,小 I 设定密码时要求同一行上的数字尽可能靠近。
形式化地,对于 ,定义密码锁第 行的松散度为
同时定义整个密码锁的松散度为
因为能开锁的状态满足 尽可能小,因此小 I 希望你找出最小的 值。