wch的暑假作业太多了,共有 n 个互相独立的任务(即可以按任意顺序做完), 每个任务有一个权值 ai ,且满足,对于 i=j,ai=aj。巧合的是,wch的暑假天数也恰好是 n ,于是他决定每天做一项任务。wch每天的精神状态是不同的,第 i 天的精神状态权值为 bi ,且满足,对于 i=j,bi=bj 。若wch选择在第 i 天做第 j 个任务,那么他会得到 (ai−bj)2 的疲劳值。wch一开始的疲劳值为0,现在他想让暑假过后的疲劳值最小,所以请你计算这个最小的疲劳值。由于这个数字可能很大,所以请你输出该值mod 998244353 后的值。
但是这个问题太简单了,wch不会这么简单放过你的。新的任务来了,定义一次操作为交换两个相邻任务的位置或者交换两个相邻天的精神状态权值。现在wch要问你,达到最小疲劳值时的最少操作次数。