摘要: 中位数贪心 题目1 题目链接 462. 最小操作次数使数组元素相等 II - 力扣(LeetCode) 题目大意 给你一个长度为 n 的整数数组 nums ,返回使所有数组元素相等需要的最小操作数。 在一次操作中,你可以使数组中的一个元素加 1 或者减 1 。 示例 输入:nums = [1,2,3 阅读全文
posted @ 2024-03-21 21:20 gebeng 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 单调栈的妙用 题目1 题目链接 402. 移掉 K 位数字 - 力扣(LeetCode) 题目大意 给你一个以字符串表示的非负整数 num 和一个整数 k ,移除这个数中的 k 位数字,使得剩下的数字最小。 请你以字符串形式返回这个最小的数字。 示例 输入:num = "1432219", k = 阅读全文
posted @ 2024-03-21 14:22 gebeng 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 力扣周赛第01弹 思维 与 dp 一、成为 K 特殊字符串需要删除的最少字符数 题目 给你一个字符串 word 和一个整数 k。 如果 |freq(word[i]) - freq(word[j])| <= k 对于字符串中所有下标 i 和 j 都成立,则认为 word 是 k 特殊字符串。 此处,f 阅读全文
posted @ 2024-03-17 15:39 gebeng 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 树形DP 1、没有上司的舞会(选或不选) 题目描述 某大学有 \(n\) 个职员,编号为 \(1\ldots n\)。 他们之间有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司。 现在有个周年庆宴会,宴会每邀请来一个职员都会增加一定的快乐指数 \(r_i\),但是呢, 阅读全文
posted @ 2024-03-15 15:25 gebeng 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 一、根据前序与中序构造二叉树 前序遍历:确定根节点root,最左端的节点即为根节点 中序遍历:确定根节点左右两边的节点,通过计算左右两边节点集合的大小 对root左节点集合与右节点集合执行重复操作,不断确定小集合的根节点,最终可构造出一整棵二叉树 树的存储可以采用定义类或结构体,这里为方便存储,采用 阅读全文
posted @ 2024-03-01 20:45 gebeng 阅读(33) 评论(0) 推荐(0) 编辑
摘要: ①后导0(__builtin_ctz()) #include<bits/stdc++.h> using namespace std; int main() { cout << __builtin_ctz(8) << endl; // ans = 3 because 8 = 0b1000 return 阅读全文
posted @ 2024-02-29 18:36 gebeng 阅读(157) 评论(0) 推荐(0) 编辑