2013年10月4日
摘要: 15.1.1demo code 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 11 #define MAX 1010012 13 int l[2][MAX] = {{1, 2, 1, 1, 2}, {1, 2, 1, 2, 2}};14 int l_star = 1;15 16 void print_stations(int n)17 {18 int i = l_star;19 pri... 阅读全文
posted @ 2013-10-04 22:06 leiatpku 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 这个题和算法书上的2.22题类似,因此y轴只要求出中位数,然后所有的点都要移动到中位数。x轴的情况有点不同, 想了好久终于想明白了。首先将x升序排序(因为最终的相对位置是不变的),然后设首个元素的基准点为P,则|x[0] - (p+0)| + |x[1] - (p+1)| + |x[2] - (p+2)| + ... + |x[n-1] - (p+n-1)| = |x[0]-0-P| + |x[1]-1-P| + |x[2]-2-P| +...+|x[n-1]-(n-1)-P|,设z[i] = x[i] - i; 这时候就和y类似了, 只要对z数组升序排序,然后找到中位数,再计算就可以了。ac 阅读全文
posted @ 2013-10-04 13:29 leiatpku 阅读(383) 评论(0) 推荐(0) 编辑