首页 > 其他分享 >双是整数卡片

双是整数卡片

时间:2024-06-02 21:04:22浏览次数:15  
标签:卡片 int 双是 top 整数 num que

题目见《整数卡片》《又是整数卡片》

---------------------------------------------------------------------------------------------------------------------------------

#include <bits/stdc++.h>
using namespace std;

struct node
{
    int amo,num;
    bool operator<(const node &other) const
    {
        return num < other.num;
    }
};
priority_queue<node>que;
int main()
{
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        int a;
        cin>>a;
        que.push({1,a});
    }
    for(int i=1;i<=m;i++)
    {
        int b,c;
        cin>>b>>c;
        que.push({b,c});
    }
    long long sum=0;
    int q=0;
    while(true)
    {
        if(n-q<que.top().amo)
        {
            sum+=1ll*(n-q)*que.top().num;
            break;
        }
        else
        {
            sum+=1ll*que.top().amo*que.top().num;
            q+=que.top().amo;
            que.pop();
        }
    }
    cout<<sum;
    return 0;
}

---------------------------------------------------------------------------------------------------

整数卡片:

这道题我前面写的时候问题不大,结果后面写着写着发现超时了,我爸爸说是因为遍历map的时候没有erase。

但是erase之后又RTE了,因为在用AUTO遍历的时候,是不能修改的,会影响红黑树的结构。

所以我开了一个vector,把要erase的下标都存了进去,最后再一块儿erase就好了。这种方法叫“在线算法”。

又是整数卡片:

老师评论了“整数卡片”之后,我用老师的方法又写了一编,果然方便多了。这种方法叫“离线算法”。
双是整数卡片:

用的离线优先队列,比登天还难!

皇上大人专门下圣旨派我吐槽一下这个反人类的优先队列。不用struct的时候,默认大根堆,而且改小根还特复杂。有struct时用不了cmp就算了,operator大根堆居然用小于号!

标签:卡片,int,双是,top,整数,num,que
From: https://blog.csdn.net/AnnaWu13/article/details/139393982

相关文章

  • C语言----递归函数,计算一个非负整数的数字之和
    intDigitSum(intn){if(n==0)//如果n为0,则停止递归,因为没有更多的数字可以添加。{return0;}else{returnn%10+DigitSum(n/10);}/*假设输入123,第一次递归,return3和DigitSum(12)DigitSum(12)......
  • 【教学类-58-09】黑白三角拼图07(1页3张黑白的白点卡片,一种宫格36张,适合一个班级一次操
    背景需求之前做了传统三角拼图,但是感觉幼儿遇到一些平行四边形时,都不知道要连接那几个点。【教学类-58-03】黑白三角拼图03(4*4宫格)总数算不出+随机抽取10张-CSDN博客文章浏览阅读864次,点赞27次,收藏16次。【教学类-58-03】黑白三角拼图03(4*4宫格)总数算不出+随机抽取10张htt......
  • 【教学类-58-06】黑白三角拼图06(1页3张彩色黑点卡片,一种宫格36张,适合一个班级一次操作
    作品展示背景需求【教学类-58-05】黑白三角拼图05(2-10宫格,每个宫格随机1张-6张,带空格纸,1页3张黑白3张白卡)-CSDN博客文章浏览阅读343次,点赞10次,收藏6次。【教学类-58-05】黑白三角拼图05(2-10宫格,每个宫格随机1张-6张,带空格纸,1页3张黑白3张白卡)https://blog.csdn.net/reasons......
  • 8. 字符串转换整数 (atoi)
    请你来实现一个myAtoi(strings)函数,使其能将字符串转换成一个32位有符号整数。函数myAtoi(strings)的算法如下:空格:读入字符串并丢弃无用的前导空格("")符号:检查下一个字符(假设还未到字符末尾)为'-'还是'+'。如果两者都不存在,则假定结果为正。转换:通过跳过前置零来读......
  • 8.整数反转
    给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范围[−231,231−1],就返回0。假设环境不允许存储64位整数(有符号或无符号)。示例1:输入:x=123输出:321示例2:输入:x=-123输出:-321示例3:输入:x=120......
  • 全开源源码---小红书卡片-跳转微信-自动回复跳转卡片-商品卡片-发私信-发群聊-安全导
    做小红书的人都知道小红书的用户商业价值非常高,消费能力很强,很多做高客单产品的都想从小红书平台上引流到私域成交,但是都会遇到账号违规、被封的问题,因为小红书的平台是所有平台里对引流导流最严的。不允许留公众号、手机号、微信号等联系方式,一旦被发现就会面临封禁等处罚。......
  • 开源源码---小红书卡片-跳转微信-自动回复跳转卡片-商品卡片-发私信-发群聊-安全导流
     做小红书的人都知道小红书的用户商业价值非常高,消费能力很强,很多做高客单产品的都想从小红书平台上引流到私域成交,但是都会遇到账号违规、被封的问题,因为小红书的平台是所有平台里对引流导流最严的。不允许留公众号、手机号、微信号等联系方式,一旦被发现就会面临封禁等处罚。......
  • MATLAB求解混合整数线性规划问题(MILP)
    文章目录前言一、混合整数线性规划模型(MILP)的概念二、matlab求解方法1.求解说明2.求解代码总结前言本文主要介绍混合整数线性规划模型(MILP)的概念及利用matlab进行求解。一、混合整数线性规划模型(MILP)的概念线性规划模型(LinearProgramming,LP):LP的定义比较简单......
  • LeetCode 第8题:字符串转换整数 (atoi)
    本文我们来看看LeetCode第8题.字符串转换整数(atoi)的解析过程。文章目录一、引言题目描述示例二、解题思路1.丢弃无用的前导空格2.处理正负号3.读入数字4.处理整数溢出5.组合起来思路流程图三、Java代码实现代码解析1.移除前导空格2.处理正负号3.转换数......
  • PyCharm调试 查看张量完整数据方法
    PyCharm调试时查看张量的值时默认中间使用...有时候需要查看完整的数据来debug一直print又很麻烦可以使用下面这个方法这里我想查看这个叫test的张量完整值,在debug界面找到这个变量并右键选择评估表达式在表达式界面输入下面代码记得替换变量名np.array(test.data.cp......