T1: 一个n行m列的矩阵,用0 - n*m-1填充,从(0, 0)出发,每次移动一步,移动到的位置上可以获取这个点上的数值作为得分,当离开该点后这个点的得分会恢复。求进行k步操作后,最多可以获得多少分。思路:先走到最后一行,然后往右走,如果可以走到最后一个格子,就在最后一个和倒数第二个之间来回走即可。T2: 给一个长为n的数组,一个m,一个k,每次操作可以任意选择至少m个数,如果选出来的数最大值-最小值思路:排序+滑动窗口T3: 给定一个数组,可以进行k次操作,每次可以将最多连续l个元素值变为任意值,求操作结束数组最小值是多少。思路:二分结果即可,样例不强,一开始上来优先队列暴力就过了40T4: 给定n个员工的出发位置,k个通行证所在位置,一个上班地点,员工只有取得了通行证才可以上班,求所有员工都去上班了的最小时间。思路:员工位置从小到大排序,通行证位置从小到大排序。显然最大的难题是哪个通行证应该分配给哪个员工。贪心的思路是拿连续的n个通行证。对k做一个n的滑动窗口,然后通行证和员工就一一对应了,然后根据两者的位置和目的地的位置做一下分类讨论即可。