蓝桥杯辅导课之模拟、枚举和排序
凌窍
只有变强才能被尊重,才有选择的权利!
展开
-
点赞狂魔c++
按照题目意思模拟即可。输出标签出现次数平均值 = K / 不同标签总数,平均值的类型为float或double。原创 2024-03-28 16:24:29 · 155 阅读 · 0 评论 -
外卖店优先级c++
我们可以在遍历record数组的过程中使用一个last数组记录一家外卖店上一次接到订单的时间,等到该外卖店的订单再次出现时再处理没有订单期间带来的优先级减少;而不是每一时刻都把没有订单的店铺的优先级减1。首先说一下暴力做法。从前往后遍历一遍订单信息,对于每个时刻,有订单的外卖店优先级加2,无订单的外卖店优先级减1。以前的思路是针对一个订单信息的时刻,一个时刻处理所有店铺的优先级,而现在的思路是针对一个订单信息的店铺,一家店铺处理一家店铺的优先级。6时刻时,1 号店优先级降到 3,被移除出优先缓存;原创 2024-03-22 22:08:18 · 389 阅读 · 0 评论 -
递增三元组C++
题目让我们求所有满足Ai < Bi < Ci的三元组组合,我们可以先将A, B, C三个数组按升序排序,设计分别指向A数组和C数组的指针ia、ic,一开始指向数组的第一个数。利用指针ic,从C数组中找到第一个大于B[i]的数,那么对于特定的一个B[i],共可以组成ia * 1 * (n - ic)个三元组。如果数组cnt[i]的含义表示A数组中值为i的个数,那么求cnt的前缀和s[i],s[i]表示A数组中小于等于i的个数,将i替换成B[i],则s[ B[i] ]表示A数组中小于等于B [i] 的个数。原创 2024-03-19 16:39:19 · 268 阅读 · 0 评论 -
连号区间数c++
第一个用例中,有 77 个连号区间分别是:[1,1],[1,2],[1,3],[1,4],[2,2],[3,3],[4,4][1,1],[1,2],[1,3],[1,4],[2,2],[3,3],[4,4]找到用于优化时间复杂度的性质:在一个元素个数为R - L + 1区间 [L, R] 内,如果区间的最大值和最小值的差为 R - L,那么该区间是连号区间。第二个用例中,有 99 个连号区间分别是:[1,1],[1,2],[1,3],[1,4],[1,5],[2,2],[3,3],[4,4],[5,5]原创 2024-03-17 11:54:18 · 265 阅读 · 0 评论