2 3 4

贪心算法刷题记录

黑白连线

  • Description

给定直线上2n个点的序列P[1,2,… ,2n],每个点P[i]要么是白点要么是黑点,其中共有n个白点和n个黑点,
相邻两个点之间距离均为1,请设计一个算法将每个白点与一黑点相连,使得连线的总长度最小。例如,图中有
4个白点和4个黑点,以图中方式相连,连线总长度为1+1+1+5=8。

  • Input

第一行输入m表示有m组测试. 每组测试首先输入n(n<=10000),接下来输入2n个0或者1, 分别表示白色或者
黑色, 其中0和1的个数分别为n个.

  • Output

对每组测试数据输出最小总连线长度.

  • Sample Input

2
4
1 1 0 1 0 0 0 1
4
0 0 1 0 1 1 1 0

  • Sample Output

8
8

思路分析

感觉很明确,就是让最先出现的异色点两两相连

posted @ 2022-05-21 10:16  kokomi~  阅读(108)  评论(0)    收藏  举报