日期:2014-05-17  浏览次数:20987 次

数组求解
一个list<point> list
X Y
1 1
1 2
1 3
1 4
1 5
//想得到 1 3  连续整数(1+2+3+4+5)/5
1 10
1 11
1 12
//得到1,11 连续整数(10+11+12)/3
2 1
2 2
2 3
//得到 2,2 连续整数(1+2+3)/3
2 5

最后想要的结果是
1 3
1 11
2 2
2 5

------解决方案--------------------
var result = list.GroupBy(x => x.x).Select(x => new Point(x.Key, x.Average(y => y.y)));
------解决方案--------------------
p.y = (list[0].y+list[list.count-1].y)*list.count/2;