网络安全渗透测试实战:从信息收集到权限提升的完整工具链与操作指南
2026/7/1 22:11:34
算法原理:
解法:贪心
45ms击败52.13%
时间复杂度O(Nlogn)
升序排序后,从后往前遍历,先挑最大的,每挑一次会减少1,那么挑了i次就减少了n-1-i
class Solution { public long maximumHappinessSum(int[] h, int k) { int n=h.length; Arrays.sort(h); long ret=h[n-1]; for(int i=n-2;i>n-1-k&&h[i]>n-1-i;i--) ret+=h[i]-(n-1-i); return ret; } }