题解

1 条题解

  • 0
    @ 2022-07-13 16:57:10

    设 p=tot/n 即每个最后金币数;

    假设 1 号给了 n 号 t 枚金币,则每个人转手硬币数表示为:

    1->n: |t|
    1->2: |(a[1]-p)-t|
    2->3: |(a[2]+a[1]-2p)-t|
    3->4: |(a[3]+a[2]+a[1]-3p)-t|
    ……
    n-1->n: |(a[n-1]+..+a[1]-(n-1)*p)-t |

    设 sum[i]=a[1]+a[2]+...+a[i],
    再设 b[i]=a[1]+a[2]+..+a[i]-i*p,即 b[i]=sum[i]-i*p,则有:

    移动金币总数为:|b[0]-t|+|b[1]-t|+...+|b[n-1]-t| 显然要使这个式子胡值最小,则t取b[0],b[1],…,中位数即可!

  • 1

信息

ID
2520
难度
(无)
分类
其他 | 排序 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
1
上传者