LeetCode刷题日记
eihh23333
这个作者很懒,什么都没留下…
展开
-
Leetcode 代码测试用例测试用例测试结果2998. 使 X 和 Y 相等的最少操作次数
ans用来存储当前数据直接使用减法或者加法到达y数值的操作数,step用来记录利用除到达y的操作数。add()用来更新ans的同时把经过操作的数字添加到bfs队列当中。可以把x-->y转化为x'-->y其中x'的变化方案有,为x/11向下取整。注意x/11向上取整可以分为先向下取整再向上+1,但是注意。1+x%11+1不一定小于11-x%11+1。解法二:记忆化搜索+BFS。原创 2024-05-14 21:39:55 · 146 阅读 · 0 评论 -
Leetcode 1792. 最大平均通过率
一所学校里有一些班级,每个班级里有一些学生,现在每个班都会进行一场期末考试。的优先级更高,并执行extraStudent次添加学生操作,最后统计平均通过率即可。由于班级总数不变,因此可以把平均通过率最大转化为总通过率最大。等于这个班级通过考试的学生人数除以这个班级的总人数。能通过任何班级的期末考。是所有班级的通过率之和除以班级数目。个学生每人都安排一个班级,使得。,总是给一个班级分配贡献并不高。以内的结果都会视为正确结果。,表示你提前知道了第。个学生去对应班级后的。个学生可以通过考试。原创 2024-05-13 12:13:18 · 149 阅读 · 0 评论 -
Leetcode 1793.好子数组的最大分数
枚举num[k]~0之间的所有数字作为最小值的区间并求和,这样的时间复杂度会式O(C+n)其中C为数组中的最小值,之所以是加法是因为i是单调枚举的,因此整个数组只会被遍历一遍。子数组的两个端点下标需要满足。原创 2024-05-13 11:38:03 · 128 阅读 · 0 评论