确实比较绕,大概是a,b两个数组观察i,n-i两个位置上的4个值,这四个值应该可以在a,b内俩俩交换,以及同位置交换,所以可以认为这四个值可以在四个位置随意排布。特别要注意只能改a的值,如果4个值不一样就必须改a的两个值;如果三个值不一样则if a[i] == a[n-1]: 改两个值 else 改一个值;两个不一样则讨论1112和1122这两种情况;都一样就不用改了。(对每个位置应该有更好的算法来讨论改的次数,但我菜的花了1个小时来理清各个分类情况)