小红书2020校招测试开发后端笔试题卷三

news2024/11/16 6:49:09

 //完全背包求组合数

#include <iostream>
#include<vector>
#include<set>
#include<map>
#include<algorithm>
using namespace std;
int value[300];
// vector<int>vis;
// vector<int>vis1;
map<vector<int>,int>mp;
// set<vector<int>>se;
int num=0;
int res=0;
int a[1000];

int dp[50000];
int main() {
      int n;
      scanf("%d",&n);
      getchar();
      
      char c=getchar();
      while(c!=']'){
         scanf("%d",&value[num++]);
         c=getchar();
      }
      dp[0]=1;
      //求组和,完全背包
      for(int i=0;i<num;i++){
        for(int j=value[i];j<=n;j++){
            dp[j]+=dp[j-value[i]];
        }
      }
     printf("%d\n",dp[n]);
      return 0;

}
// 64 位输出请用 printf("%lld")

 

#include <iostream>
#include<stack>
using namespace std;
string res;
stack<char>kuo;
int main() {
   string s;
   cin>>s;
   int id=0;
   for(int i=0;i<s.length();i++){
        if(s[i]=='('){
            kuo.push('(');
            id=1;
        }
        else if(s[i]==')')
        {
            kuo.pop();
        }
        // if(id==1)
        // {
        //     while(s[i]!=')'){
        //         i++;
        //     }
        //     id=0;
        // }
        else if(kuo.empty()){
            if(s[i]!='<'){
                res.push_back(s[i]);
            }
            else{
                if(res.size()>0){
                    res.pop_back();
                }
            }
        }

   }
   cout<<res<<endl;
   return 0;

}
// 64 位输出请用 printf("%lld")

 

#include <iostream>
using namespace std;
int dp[1005];
int num[1005];
int a[1005];
int main() {
    //dp[i]表示从前i篇笔记获得的最大点赞数
    int n;
    scanf("%d",&n);
    dp[0]=0;
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
    }
    dp[0]=a[0];
    num[0]=1;
    for(int i=1;i<n;i++)
    {
        dp[i]=max(dp[i-1],dp[i-2]+a[i]);
        //如果不选第i个
        if(dp[i-2]+a[i]>dp[i-1])
        num[i]=num[i-2]+1;
        else if(dp[i-2]+a[i]==dp[i-1]){
            num[i]=min(num[i-1],num[i-2]+1);
        }
        else{
            num[i]=num[i-1];
        }
        
    }
    int max_value=dp[n-1];
    printf("%d %d\n",dp[n-1],num[n-1]);
    return 0;
}
// 64 位输出请用 printf("%lld")

题解:贪心维护第一个值的升序,然后对第二个值用LIS(二分+dp),不然会爆,注意第一个值>=,第二个值要严格递增,要不然过不了

#include <iostream>
#include<queue>
#include<string.h>
#include<algorithm>
using namespace std;
struct Node{
    int x;
    int h;
}node[1000004];

bool cmp(Node a,Node b)
{
    
    if(a.x<b.x )
    {
        return true;
    }
    else if(a.x==b.x)
    {
        return a.h<=b.h;
    }
    
    else{
        return  false;
    }
  
}
int dp[1000005];

int binary_search(int r,int val)
{
    int l=1;
   
    while(l<=r)
    {
         int mid=(l+r)/2;
         if(dp[mid]<val)
         {
            l=mid+1;
         }
         else{
            r=mid-1;
         }
    }
    return l;
}
int main() {
    int N;
    scanf("%d",&N);
    for(int i=0;i<N;i++)
    {
        scanf("%d%d",&node[i].x,&node[i].h);
    }
    sort(node,node+N,cmp);

    int res=1;
  
    memset(dp,0x3f3f3f3f,sizeof(dp));
    dp[1]=node[0].h;
     for(int i=1;i<N;i++)
    {
        if(node[i].h>dp[res])
        {
            dp[++res]=node[i].h;

        }
        else{
            dp[binary_search(res,node[i].h)]=node[i].h;
        }
        // printf("%d %d\n",node[i].x,node[i].h);
    }
    printf("%d\n",res);
    return 0;

}
// 64 位输出请用 printf("%lld")

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/818058.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Verilog语法学习——LV3_奇偶校验

LV3_奇偶校验 题目来源于牛客网 [牛客网在线编程_Verilog篇_Verilog快速入门 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page1&tabVerilog篇&topicId301) 题目 题目描述&#xff1a; 现在需要对输入的32位数据进行奇偶校验,根据sel输出校验结果&#xff0…

【GITHUB】FlipIt – Windows的开源翻页时钟

FlipIt 是一款免费开源的翻页时钟应用&#xff0c;专为 Windows 平台设计。该应用灵感来源于备受喜爱的老牌翻页时钟应用 Fliqlo&#xff0c;后者被公认为经典的翻页时钟屏保。然而&#xff0c;由于 Fliqlo 是基于 Flash 技术开发的&#xff0c;随着微软最近正式禁用 Flash&…

《cuda c编程权威指南》03 - cuda小功能汇总

1. 计时 1.1 linux #include <sys/time.h>double cpuSecond() {struct timeval tp;gettimeofday(&tp, NULL);return ((double)tp.tv_sec (double)tp.tv_usec*1e-6); }// 调用 double start cpuSecond(); kernel_name << <grid, block >> > (ar…

防火墙监控工具

防火墙监控是跟踪在高效防火墙性能中起着关键作用的重要防火墙指标&#xff0c;防火墙监控通常应包括&#xff1a; 防火墙日志监控防火墙规则监控防火墙配置监控防火墙警报监控 防火墙监控服务的一个重要方面是它应该是主动的。主动识别内部和外部安全威胁有助于在早期阶段识…

CompletableFuture使用详解(全网看这一篇就行)

CompletableFuture是jdk8的新特性。CompletableFuture实现了CompletionStage接口和Future接口&#xff0c;前者是对后者的一个扩展&#xff0c;增加了异步会点、流式处理、多个Future组合处理的能力&#xff0c;使Java在处理多任务的协同工作时更加顺畅便利。 一、创建异步任务…

element-tree-line el-tree 添加结构线 添加虚线

概览&#xff1a;给element组件添加上虚线&#xff0c;通过使用插件element-tree-line 参考连接&#xff1a; 参考别人的博客 安装插件&#xff1a; # npm npm install element-tree-line -S # yarn yarn add element-tree-line -S main.js全局注册引入插件&#xff1a; imp…

《翻开收藏夹,拾起行动的力量》

文章目录 每日一句正能量前言分享一道收藏的好题分享一个收藏的便捷技巧积灰这么久&#xff0c;这个当时被收藏的东西对现在的你还有用吗&#xff1f;后记 每日一句正能量 很喜欢一个字&#xff0c;淡&#xff0c;平淡的淡&#xff0c;其实很不平淡&#xff0c;蕴含着很多人生哲…

巨人互动|Google海外户Google SEO关键词工具有哪些?

Google SEO是网站优化的重要工具之一&#xff0c;可以通过优化关键词来提升网站在搜索引擎结果页面的排名。而Google SEO关键词工具是帮助网站管理员和营销人员找到最有效关键词的工具。Google SEO关键词工具是一组被广泛使用的在线工具&#xff0c;可以帮助网站管理员和营销人…

初学者预算不多,千元内新手入门吉他推荐!恩雅X0和VEAZEN费森CLR300怎么样?全方面对比评测!

千元内入门吉他少不了VEAZEN费森CLR300单板系列和恩雅X0 HPL合板系列这两款热门系列&#xff0c;最近很多初学者朋友来私信&#xff0c;咨询这两款琴有什么优缺点&#xff0c;哪一款更值得初学者选购&#xff0c;那么今天&#xff0c;就以它们为本期的评测主角&#xff0c;全方…

阿里用户序列建模SIM

Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction 摘要 MIMN是工业解决方案中第一个可以对用户序列长度达到1000的数据进行建模。但MIMN无法精确捕获给定用户兴趣的特定候选项目时&#xff0c;长度为用户行为…

3.playbook剧本二

文章目录 playbook二Roles模块roles模式安装LNMP创建nginxfiles目录handlers目录tasks目录templates目录vars目录 创建mysqltasks目录 创建phpfiles目录handlers目录tasks目录templates目录vars目录 创建LNMP剧本文件 playbook二 Roles模块 角色的作用&#xff1a;把playbook…

海外网红营销:品牌如何借助网红力量打造口碑传播?

随着全球化的不断推进&#xff0c;品牌在海外市场的竞争日趋激烈。在这样的市场环境中&#xff0c;口碑成为品牌赢得消费者信任和忠诚度的重要手段。然而&#xff0c;在海外市场中树立良好的口碑并吸引目标受众&#xff0c;是一个充满挑战的任务。如今&#xff0c;随着社交媒体…

生产者消费者模型——条件变量与信号量

文章目录 模型条件变量信号量&#xff08;信号灯&#xff09;应用伪代码 模型 生产者、消费者用线程 容器用链表 条件变量 条件变量不是锁&#xff0c;可以控制线程阻塞与否&#xff0c;可以配合锁使用。 注意&#xff1a;当pthread_cond_wait(&cond, &mutex)使用时&…

【投资笔记】(23/7/31)下半年消费复苏的机会来了?

本文为本人投资逻辑验证&#xff0c;不作为任何建议&#xff1b; 政策面 汽车&#xff1a;&#xff08;一&#xff09;优化汽车购买使用管理&#xff08;二&#xff09;扩大新能源汽车消费&#xff0c;重点在于新能源汽车&#xff1b;房地产&#xff1a;&#xff08;三&#x…

TWILIGHT靶场详解

TWILIGHT靶场详解 下载地址&#xff1a;https://download.vulnhub.com/sunset/twilight.7z 这是一个比较简单的靶场&#xff0c;拿到IP后我们扫描发现开启了超级多的端口 其实这些端口一点用都没有&#xff0c;在我的方法中 但是也有不同的方法可以拿权限&#xff0c;就需要…

【数据分析专栏之Python篇】三、全网最细Numpy教程

文章目录 前言一、Numpy概述1.1 NumPy 简介1.2 NumPy 安装1.3 NumPy 操作 二、Ndarray 对象2.1 概述2.2 特点2.3 Ndarray类2.4 数据类型 三、Numpy 常用操作及函数3.1 数组属性3.2 创建数组3.3 数组维度变换3.4 ndarray数组的索引和切片3.5 ndarray数组的运算3.6 利用ndarray进…

记一次phpmyadmin巧妙利用

声明&#xff1a;文中涉及到的技术和工具&#xff0c;仅供学习使用&#xff0c;禁止从事任何非法活动&#xff0c;如因此造成的直接或间接损失&#xff0c;均由使用者自行承担责任。 点点关注不迷路&#xff0c;每周不定时持续分享各种干货。 原文链接&#xff1a;众亦信安&a…

辅助栈、单调栈与单调队列在lc中的应用

为什么要汇总在一块&#xff1f; 三者都有何区别&#xff1f; 总结 1 泛化性更好的策略 个人建议单调栈/队列中存放的元素最好是下标而不是值&#xff0c;因为有的题目需要根据下标计算&#xff0c;这样泛化性更好。参考lc239和lc496 2 单调队列何栈其实可以共用同一套模板…

【个人笔记】Linux 服务管理两种方式service和systemctl

service命令与systemctl 命令 service 命令与传统的 SysVinit 和 Upstart 初始化系统相关。较早期的 Linux 发行版&#xff08;如早期的 Ubuntu、Red Hat 等&#xff09;使用了这些初始化系统。service 命令用于启动、停止、重启和查询系统服务的状态。虽然许多现代 Linux 发行…

【Python目标识别】Labelimg标记深度学习(YOLO)样本

人工智能、ai、深度学习已经火了很长一段时间了&#xff0c;但是还有很多小伙伴没有接触到这个行业&#xff0c;但大家应该多多少少听过&#xff0c;网上有些兼职就是拿电脑拉拉框、数据标注啥的&#xff0c;其实这就是在标记样本&#xff0c;供计算机去学习。所以今天跟大家分…