已知n,k为正整数,n>k. 有一块正方形的土地被划分为了 n*n个小块, 且每个小块都是同样大小的正方形. 目前需要k个拖拉机来犁地. 每个拖拉机都从左下角出发, 向右上角移动. 拖拉机的移动方式为只能向右或向上移动到与其当前单元格相邻的单元格.(这里的相邻指有公共边). 求未被犁过的单元格个数的最小值.
假设最小值对应的所有情况都不存在图1黄色部分全部被犁。不妨最小值中一种犁地方式的对应的土地右、下侧边界如图2。如果蓝色部分为同一个拖拉机犁的,易知将蓝色部分替换成黄色部分,未被犁过的地不会增多,矛盾,所以假设不成立。
如果蓝色部分不是同一个拖拉机犁的,属于a个拖拉机,易知两个红线各属于同一个拖拉机(可能是同一个)。其他蓝色部分属于a-2(也可能是a-1)个拖拉机。对于两个拖拉机来说,无论其轨迹如何,总可以把这两个拖拉机的其中一个的轨迹看作是其合轨迹的右下部分,另一个的轨迹看作是合轨迹的左上部分 而不会造成任何影响。由此 通过简单推理可知,蓝色部分可认为是同一个拖拉机犁的(同理可以得到 可以认为黄色部分是同一个拖拉机犁的),因此假设不成立,即最小值对应的所有情况中,存在图1黄色部分全部被犁的一种犁地方式,由于可以认为黄色部分是同一个拖拉机犁的且拖拉机工作顺序不会对结果产生影响,所以最小值就等于第一个拖拉机轨迹为黄色对应的所有情况的最小值。令C(n,k)为n*n k个拖拉机 被犁过的单元格个数的最大值。易知第一个拖拉机轨迹为黄色对应的所有情况中白色部分(非黄色部分)被犁过的单元格个数<=C(n-1,k-1) (易用反证法证明),所以C(n,k)<=C(n-1,k-1)+2n-1。而剩下的k-1个拖拉机完全可以按照C(n-1,k-1)中k-1个拖拉机的方式犁地,此时得到的被犁过的单元格个数=C(n-1,k-1)+2n-1,所以C(n,k)=C(n-1,k-1)+2n-1,因为C(n-k+1,1)=2n-2k+1,所以C(n,k)=(2n-k+2)(k-1)+2n-3k+2
标签:轨迹,部分,单元格,泰国,最小值,2020,黄色,拖拉机,奥林匹克 From: https://www.cnblogs.com/lau1997/p/16609182.html