[笔试训练](二)

news2024/9/29 19:21:02

004

牛牛的快递_牛客题霸_牛客网 (nowcoder.com)

题目:

 

 题解:

使用向上取整函数ceil(),(记得添加头文件#include<cmath>)

#include <iostream>
#include <cmath>
using namespace std;

int main() 
{
    double a;//要求单精度,用double也行
    char b;
    cin>>a;
    cin>>b;
    int ret=0;

    if(a<=1)
    {
        ret+=20;
    }
    else
    {
        ret+=20;
        a-=1;
        ret+=ceil(a)*1;//ceil()函数表示向上取整,如:1.2取2
    }

    if(b=='y') ret+=5;

    cout<<ret<<endl;
}

 005

最小花费爬楼梯_牛客题霸_牛客网 (nowcoder.com)

题目:

 

题解:

dp[i]表示从楼梯第i 个台阶,向上爬到楼梯顶部需要的最小花费(填表方向:n-1->0)

状态dp[i]可由两种状态转化而来,分别是:

1.第i+1位置阶梯到顶的最小花费+第i位置向上1个阶梯的花费

2.第i+2位置阶梯到顶的最小花费+第i位置向上2个阶梯的花费

返回下标为 0 或下标为 1 的台阶开始爬楼梯花费的最小值。

#include <iostream>
#include <vector>
using namespace std;

int main() 
{
    int n;
    cin>>n;
    vector<int> cost(n);
    for(int i=0;i<n;i++)
    {
        cin>>cost[i];
    }
    
    //动态规划
    //创建dp
    //初始化
    //填表
    //返回
    vector<int> dp(n);
    dp[n-1]=cost[n-1];
    dp[n-2]=cost[n-2];
    for(int i=n-3;i>=0;i--)
    {
        dp[i]=min(dp[i+1]+cost[i],dp[i+2]+cost[i]);
    }
    int ret=min(dp[0],dp[1]);
    cout<<ret<<endl;
    return 0;
}

 006

数组中两个字符串的最小距离__牛客网 (nowcoder.com)

题目:

 

题解:

 1.暴力:两层for循环,当strs[i]==str1,strs[j]==str2时,记录最小距离ret=min(ret,j-i)。(时间复杂度n^2,会超时)

2.贪心(dp):遍历一遍strs,当s==str1或者s==str2时,对应更新此时下标prev1或prev2,同时更新此时i和prev1或者prev2之间的距离(保持ret为str1和str2的最小距离)

#include <iostream>
#include <string>
using namespace std;

int main() 
{
    int n;
    cin>>n;
    string s;
    string str1,str2;
    cin>>str1>>str2;

    int prev1=-1,prev2=-1,ret=0x3f3f3f3f;
    for(int i=0;i<n;i++)
    {
        cin>>s;
        if(s==str1)
        {
            if(prev2!=-1)
            {
                ret=min(ret,i-prev2);
            }
            prev1=i;
        }
        else if(s==str2)
        {   
            if(prev1!=-1)
            {
                ret=min(ret,i-prev1);                
            }
            prev2=i;
        }
    }
    if(ret==0x3f3f3f3f) cout<<-1<<endl;
    else cout<<ret<<endl;
    return 0;
}

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

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

相关文章

基于SpringBoot+Vue的企业资产管理系统设计与实现

1、系统演示视频&#xff08;演示视频&#xff09; 2、需要请联系

Ceph 分布式文件系统 搭建及使用

一、Ceph 介绍 在当今数据爆炸式增长的时代&#xff0c;企业对于可靠、可扩展的存储解决方案的需求日益迫切。Ceph 作为一种开源的、可伸缩的分布式存储解决方案&#xff0c;正逐渐成为企业级存储领域的热门选择。Ceph是一种由Radicalbit公司开发的开源分布式存储系统&#xf…

Visual Studio 2022 Professional、Enterprise安装教程

Visual Studio 2022 Professional、Enterprise安装教程 下载安装包安装 我是电脑已经有VS2019&#xff0c;现在加装一个VS2022。 下载安装包 首先下载安装包&#xff0c;进入官网进行下载&#xff0c;VS官网下载地址。 进入之后&#xff0c;会显示如下界面&#xff0c;选择Pro…

chrome插件 脚本 使用和推荐

chrome插件使用 在极简插件中可以进行下载并进行安装, 内部有安装教程在极简插件中搜索"油猴",下载一个油猴插件,并安装,可以用于下载很多的用户脚本用户脚本下载地址Greasy Fork,里面有很多实用的用户脚本供下载,并在油猴中进行管理 推荐的插件 Tampermonkey 篡改…

Linux进阶篇:centos7搭建jdk环境

Linux服务搭建篇&#xff1a;centos7搭建jdk环境 本文主要介绍的是如何是Linux环境下安装JDK的&#xff0c;关于jdk的概念就不做赘述了&#xff0c;相信大家都有所耳闻了&#xff0c;Linux环境下&#xff0c;很多时候也离不开Java的&#xff0c;下面笔者就和大家一起分享如何jd…

都2024年了,你还不知道git worktree么?

三年前 python 大佬吉多范罗苏姆(为 Python 程序设计语言的最初设计者及主要架构师)才知道 git worktree &#xff0c;我现在才知道&#xff0c;我觉得没啥丢人的。 应用场景 如果你正在 feature 的分支中开发新功能&#xff0c;线上版本紧急错误又需要你基于 master 做修复。…

DFS和回溯专题:组合总和

DFS和回溯专题&#xff1a;组合总和 题目链接: 39.组合总和 参考题解&#xff1a;代码随想录 题目描述 代码纯享版 class Solution {public List<List<Integer>> list_all new ArrayList();public List<Integer> list new ArrayList();public List<…

linux服务器和RAID磁盘阵列

1、服务器 &#xff08;1&#xff09;服务器分类 机架式居多 塔式 刀片式 机柜式 机架式 机架式服务器是一种服务器的机箱形式&#xff0c;它被设计为在服务器机架或机柜中安装。机架式服务器通常具有标准的19英寸宽度&#xff0c;并且可以根据服务器的高度进行划分&#xff0…

gcc/g++编译器

之前学习的vim为linux中编写程序的编写器&#xff0c;但是程序想要编译执行就还需要c语言的编译器gcc 程序翻译的过程 首先我们来了解一下程序编译语言的诞生历程 首先计算机只知道二进制&#xff0c;所以人们开始是用二进制编码&#xff0c;然后又用二进制编码写了一个汇编语…

智慧安防边缘计算硬件AI智能分析网关V4算法启停的操作步骤

TSINGSEE青犀视频智能分析网关V4内置了近40种AI算法模型&#xff0c;支持对接入的视频图像进行人、车、物、行为等实时检测分析&#xff0c;上报识别结果&#xff0c;并能进行语音告警播放。硬件管理平台支持RTSP、GB28181协议、以及厂家私有协议接入&#xff0c;可兼容市面上常…

基于CH32V103的多功能推杆设计

一、项目简介 “创意源于生活&#xff0c;工具始于懒惰。” 整体造型外观参考了最近比较火的夫妻游戏《双人成行》第一关里面那个吸尘器的推杆开关&#xff0c;结构中采用阻尼器/滚珠轴承等器件&#xff0c;使其非常具有质感和手感。功能上我构思不能只有电脑开关这么简单地一…

学习微服务nacos遇到的问题

在学习微服务注册到nacos的时候&#xff0c;所有过程都正确了&#xff0c;注册也成功了&#xff0c;但是访问不了调用的地址报错出现问题。 一、引入依赖 在cloud-demo父工程的pom文件中的<dependencyManagement>中引入SpringCloudAlibaba的依赖 1、springboot <pa…

MySQL数据库中备份和查询

总所周知我们用到的数据有可能丢失&#xff0c;那么我们就可以通过备份把数据找回&#xff0c;如何操作&#xff1a;请先看下面讲解 备份&#xff1a; 导出&#xff1a; 先对数据库进行备份&#xff0c;然后提取备份文件中的SQL语句 这就是我们导出数据&#xff0c;导出了就有…

【Transformer-BEV编码(7)】Sparse4D源代码,在mmdet里面增加cuda的插件deformable_aggregation

文章目录 插件位置在论文V3中的“地位”看看具体的代码1. deformable_aggregation.py2. deformable_aggregation.cpp3. deformable_aggregation_cuda.cu3.1 双线性插值bilinear_sampling()3.2 bilinear_sampling_grad() 梯度计算3.3 deformable_aggregation_grad() 和 deformab…

vscode 如何断点调试ros1工程

在vscode中断点调试ros1工程主要分为以下几步&#xff1a; 1. 第一步就是修改cmakelist.txt&#xff0c;到调试模式。 将CMAKE_BUILD_TYPE原来对应的代码注释掉&#xff0c;原来的一般都不是调试模式。加上下面一行代码&#xff0c;意思是设置调试模式。 # 断点调试 SET(CMAK…

Linux操作系统·Linux简介

1.世界上第一个完善的网络操作系统 Unix是1969年由美国电话电报公司(AT&T)贝尔实验室的两个工程师所创造的操作系统&#xff0c;它允许计算机同时处理多用户和程序。目前大型政府单位、大型企业、航空公司、金融机构多在使用&#xff0c;价钱昂贵&#xff0c;但性能和稳定性…

软考高级 | 系统架构设计师笔记(一)

一. 系统规划 1.1 项目的提出与选择 该步骤生成” 产品/项目建议书”. 1.2 可行性研究与效益分析 包括经济可行性/技术可行性/法律可行性/执行可行性/方案选择 5 个部分. 该步骤生 成”可行性研究报告”. 1.3 方案的制订和改进 包括确定软件架构/确定关键性要素?/确定计算…

MyBatis 框架学习(II)

MyBatis 框架学习(II) 文章目录 MyBatis 框架学习(II)1. 介绍2. 准备&测试2.1 配置数据库连接字符串和MyBatis2.2 编写持久层代码 3. MyBatis XML基础操作3.1 Insert 操作3.2 Delete 操作3.3 Update 操作3.4 Select 操作 4. #{} 与 ${}的使用5. 动态SQL操作5.1 < if >…

通过DaoCloud DCE的场景化应用看容器云平台的核心能力(三)

以下场景来自DaoCloud官方文档场景化视频&#xff0c;这里以文字形式简单提取下要点&#xff0c;包括操作步骤和一些问题。 一共13个场景&#xff0c;本篇包含5个&#xff1a;9.快速定位异常与排障、10.基于CICD的应用发布、11.基于GitOps持续部署云原生应用、12.使用中间件与…

5大自动化测试的Python框架 | 实用干货

自从2018年被评选为编程语言以来&#xff0c;Python在各大排行榜上一直都是名列前茅。 目前&#xff0c;它在Tiobe指数中排名第三个&#xff0c;仅次于Java和C。随着该编程语言的广泛使用&#xff0c;基于Python的自动化测试框架也应运而生&#xff0c;且不断发展与丰富。 因…