随笔分类 -  算法-贪心构造、位运算

摘要:https://leetcode.cn/problems/construct-the-minimum-bitwise-array-ii/description/ 构造最小位运算数组 II 给你一个长度为 n 的质数 数组 nums。你的任务是返回一个长度为 n 的数组 ans ,对于每个下标 i , 阅读全文
posted @ 2024-10-17 21:52 lipu123
摘要:链接:https://ac.nowcoder.com/acm/problem/259733 来源:牛客网 问题描述 小美定义一个数组的权值为:数组中任选两个数的异或之和。例如,数组[2,1,3]的权值为:\((2 xor 1)+(2 xor 3)+(1 xor 3)=3+1+2=6\)。 小美拿到了 阅读全文
posted @ 2024-01-15 21:41 lipu123
摘要:题目描述 有n个房子,第i个房子开放时间从li到ri,在这个房间内铸一把剑要ti的时间。同一时间只能在一个房子内铸剑, 同一时间只能铸一把剑,并且直到铸完才能离开。问你最多能铸多少剑 题目题解 这个题是一个经典的贪心问题,就是这个不能按照l[i]排序,要按照t[i]+l[i],对于每一个时间段,找到 阅读全文
posted @ 2021-10-06 21:27 lipu123 阅读(91) 评论(0) 推荐(0)
摘要:题目描述 你正在参加一个多角色游戏,每个角色都有两个主要属性:攻击 和 防御 。给你一个二维整数数组 properties ,其中 properties[i] = [attacki, defensei] 表示游戏中第 i 个角色的属性。 如果存在一个其他角色的攻击和防御等级 都严格高于 该角色的攻击 阅读全文
posted @ 2021-09-14 16:06 lipu123 阅读(66) 评论(0) 推荐(0)
摘要:题目描述 传送门 给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小。 题解 思路:尽可能让最高位小,最高位相同的情况下尽可能让次高位小,所以应该维护一个非递减栈。 构建一个非递减栈stk:从左往右遍历数字num,依次进栈;每个数字x进栈前检查是否比栈顶,是的话弹 阅读全文
posted @ 2021-08-30 20:34 lipu123 阅读(129) 评论(0) 推荐(0)
摘要:例一: 传送门 题意: 就是给你$n$个物品,每一个物品都有一个体积$v[i]$,然后给你$m$个箱子,问你这个箱子的最小的体积是多少才能将这些物品都放到这m个箱子里 n,m(1≤n,m≤1000),v1,v2…,vn ( 1≤v1,v2,…,vn≤1000) 1 5 3 1 2 3 4 5 Cas 阅读全文
posted @ 2021-08-15 11:44 lipu123 阅读(53) 评论(0) 推荐(0)
摘要:题目 题目描述 题目链接 Lena is the most economicalgirl in Moscow. So, when her dad asks her to buy some food for a trip to the country, she goes to the best sto 阅读全文
posted @ 2021-07-31 17:12 lipu123
摘要:题目: 题目链接 You are given two integers nn and mm. Find the MEXMEX of the sequence n⊕0,n⊕1,…,n⊕mn⊕0,n⊕1,…,n⊕m. Here, ⊕ is the bitwise XOR operator. MEX of 阅读全文
posted @ 2021-07-30 19:15 lipu123 阅读(154) 评论(0) 推荐(1)
摘要:哈夫曼树(最优二叉树) 给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 每次去权值最小的两个,进行合并。这个可以用优先队进行实现的 利用优先队 阅读全文
posted @ 2021-06-20 11:33 lipu123 阅读(550) 评论(0) 推荐(0)
摘要:1862. 向下取整数对和 给你一个整数数组 nums ,请你返回所有下标对 0 <= i, j < nums.length 的 floor(nums[i] / nums[j]) 结果之和。由于答案可能会很大,请你返回答案对109 + 7 取余 的结果。 函数 floor() 返回输入数字的整数部分 阅读全文
posted @ 2021-06-19 18:23 lipu123 阅读(225) 评论(0) 推荐(0)
摘要:带悔贪心的题目一般都是用小根堆或者大根堆来维护的 大题思想就是说如果做某种抉择的时候,如果后面还有比这个可选的比这个抉择更优的时候 你就先把这个抉择的值存到优先队列里,等下一个抉择的时候选择堆中最优的那个替换掉 https://www.acwing.com/activity/content/prob 阅读全文
posted @ 2021-05-29 16:00 lipu123 阅读(93) 评论(0) 推荐(0)
摘要:B . 序列合并 [ 问题 4210 ] [ 讨论 ] Description 有两个长度都是N的序列A和B,在A和B中各取一个数相加可以得到N^2个和,求这N^2个和中最小的N个。 Input 第一行一个正整数NN; 第二行NN个整数AiAi,满足Ai≤Ai+1且Ai≤1e9; 第三行NN个整数B 阅读全文
posted @ 2021-05-28 21:06 lipu123 阅读(49) 评论(0) 推荐(0)
摘要:题目链接 视频讲解 小扣当前位于魔塔游戏第一层,共有 N 个房间,编号为 0 ~ N-1。每个房间的补血道具/怪物对于血量影响记于数组 nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0 表示房间对血量无影响。 小扣初始血量为 1,且无上限。假定小 阅读全文
posted @ 2021-05-26 23:28 lipu123 阅读(187) 评论(0) 推荐(0)
摘要:题意: 给定一个包含1-n的数列,通过交换任意两个元素给数列重新排序。求最少需要多少次交换,能把数组排成按1-n递增的顺序,(数组中的元素互不重复)。 举例: 原数列为2,4,3,6,5,7;第一次交换(3,4)得2,3,4,6,5,7;第二次交换(5,6)得2,3,4,5,6,7。完成排序需2次。 阅读全文
posted @ 2021-05-04 00:27 lipu123 阅读(717) 评论(0) 推荐(0)
摘要:Listening to the rock music permutes your nuclear DNA. This astonishing and unbelievable fact was recently published in the Rock Nature Weekly, one of 阅读全文
posted @ 2021-05-03 20:18 lipu123 阅读(45) 评论(0) 推荐(0)
摘要:传送门 这个题是一个二进制模拟 现在有好多种砝码,他们的重量是 w0,w1,w2,... 每种各一个。问用这些砝码能不能表示一个重量为m的东西。 样例解释:可以将重物和3放到一个托盘中,9和1放到另外一个托盘中。 输入 单组测试数据。 第一行有两个整数w,m (2 ≤ w ≤ 10^9, 1 ≤ m 阅读全文
posted @ 2021-05-02 21:19 lipu123 阅读(263) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/11210/E来源:牛客网 口渴可乐公司近期推出了两种相同价格的新口味可乐,分别是香甜的蜂蜜可乐与温暖的生姜可乐!为了回馈一直以来爱好可乐的广大群众,在新产品上市的一个月内各家超商都有下列的优惠活动! • 收集 A 个蜂蜜 阅读全文
posted @ 2021-04-26 23:06 lipu123 阅读(131) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/12606/C 题意:定义运算a⊗b为a乘b无进位的结果,现在给一个数n,找到最小的a,使得a⊗a等于n 看了这个题就知道了,如果答案是x位数,那么相乘的数就是2*x-1. 然后还有一个规律,就是 c[k] = a[1]⊗b[k 阅读全文
posted @ 2021-03-08 22:50 lipu123 阅读(132) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/134/A来源:牛客网 铁子从森林里收集了n根木棍,她开始将它们按顺序的排成一排,从左到右依次为1到n,她回想起 在数学课上老师教她的三角形知识,她开始从这些木棍中间找三根木棍来组成一个周长最大的三角形, 这时她的兄弟顺溜 阅读全文
posted @ 2021-02-08 17:02 lipu123 阅读(254) 评论(0) 推荐(0)