楼主:
pandix (面包屌)
2025-04-10 00:38:53※ 引述《Rushia (早瀬ユウカの体操服 )》之铭言:
: https://leetcode.com/problems/minimum-operations-to-make-array-values-equal-to-k
: 3375. Minimum Operations to Make Array Values Equal to K
: 干你老师这什么死妈题目浪费了10多分钟去理解他到底再问三小= =
: 白话文:
: 给你一个阵列nums和一个数字k
: 1.你可以选一个数字h然后把nums里面所有大于h的数字改成h
: 2.求出最少需要选几个h可以把nums里的所有数字变成k
: 直接用一个set纪录所有数字,然后从大的数字到小开始做操作一,直到当前数字变k就好
: 如果最小数字比k小直接返回-1表示不可能。
k > min(nums): -1
k == min(nums): len(set(nums))-1 因为最小的数字不用改
k < min(nums): len(set(nums))
Python code:
class Solution:
def minOperations(self, nums: List[int], k: int) -> int:
return -1 if k > min(nums) else len(set(nums)) - (k == min(nums))
唉 现在只写的动这种烂题了