2015Summer Training #2
暑假集训昨天刚开始,14级的小伙伴快到齐了,hhhhh ,毕竟下学期区域赛,对我们来说还是很困难的。
打算每天写份总结。
UVA 11300 C.Spreading the Wealth
题目大意:n个人围成一圈,告诉你每个人现有的资产,每个人可以给他相邻的人钱,也可以从他相邻的人那里取到钱。最终令一圈里的人资产数相等,求最少传递的钱数。
其实是到数学题。
1a[1] - x1 + x2 = m(平均数)x2 = m + x1 - a[1] ;
2 a[2] - x2 + x3 = m ,x3 = m + x2 - a[2] = m + (m + x1 - a[1]) - a[2] = 2 * m + x1 - a[1] - a[2] ;
3 a[3] - x3 + x4 = m ,x4 = m + x3 - a[3] =............................= 3 * m + x1 - a[1] - a[2] - a[3] ;
4 ...
5 a[n-1] - xn-1 + xn = m , xn = m + xn-1 - a[n-1] =...................= (n-1)*m + x1 - a[1] - a[2] -....- a[n-1] ;
6 而我们求得是|x1|+|x2|+|x3|+。。。。+|xn|
7 把上边的公式带入,每一项都会变成|x1-Ci|的形式,那就变成了:在数轴上有n个点,求到他们的距离和最小的点是谁?
8 然后结论是x1=Ci的中位数。
9
10
11 UVALive 3708 D
12 唯一做出的一道题,讲的是一个圆周上有n个均分点,现在有要加入m个点,我们要让(m+n)个点仍是均分点,然后原来的
13 n个点就要以动到新的均分点,我们要让总移动距离最少。
14 贪心题,把原来的n个点的坐标写下来;再把m+n个点新坐标写下来;
15 然后找原来n个点在m+n中的最近位置即可。复杂度O(nlogn)。
16
17
18
19 UVA 10881 EPiotr's Ants
20 一个杆子上有n只蚂蚁,他们每秒1cm爬,相撞的话就立刻反向爬,问Ts后每只蚂蚁的位置和状态。
21 做这道题你要知道2个结论。
22 一是你可以无视相撞,可以把相撞的过程看成穿透的过程。
23 二是你要清楚一旦初始位置定下来来后,他们的绝对顺序不会变,每只蚂蚁都在左边和右边的蚂蚁之间被撞来撞去。
24
25
26
27 UVA 11464 G Even Parity
28 给你一个n×n的0/1矩阵,我们自己产生出一个等大的矩阵,然后这个矩阵里每一格,等于原矩阵对应格子上下左右相加的和。
29 我们要让这个新矩阵里每个格都为偶数,请问最少要把多少个0变成1。
30 做这道题要知道一旦第一行确定了,那么整个矩阵其实就已经确定了。然后用状压+枚举即可。
~