[笔试训练](五)

news2025/1/7 6:32:31

013

游游的you__牛客网 (nowcoder.com)

题目:

 题解:

组成一个you需要一个o且能得2分,而组成相邻字母oo需要两个o,只能得1分。优先考虑组成尽可能多的you,再考虑剩下的o,放一起。

#include <iostream>
using namespace std;

int main() 
{
    int q;
    cin>>q;
    while(q--)
    {
        int a,b,c;
        cin>>a>>b>>c;
        int x=min(min(a,b),c);
        cout<<x*2+max(b-x-1,0)<<endl; //b-x==0时,刚好用完o
    }
    return 0;
}

014

腐烂的苹果_牛客题霸_牛客网 (nowcoder.com)

题目: 

 

 题解:

多源bfs+最短路:将每层刚腐烂的的苹果放入队列中,同时用bool二维数组标记好,再找下一层,直到相邻没有完好的苹果为止。最后遍历一遍查看有没有没有标记的完好的苹果。

class Solution {
public:
    int dx[4]={0,0,-1,1};
    int dy[4]={-1,1,0,0};
    int m,n;
    bool vis[1100][1100];
    int rotApple(vector<vector<int> >& grid) 
    {
        //多源bfs
        m=grid.size(),n=grid[0].size();
        queue<pair<int,int>> q;
        for(int i=0;i<m;i++)
        {
            for(int j=0;j<n;j++)
            {
                if(grid[i][j]==2)
                {
                    q.push({i,j});
                }
            }
        }

        int ret=0;
        while(q.size())
        {
            int sz=q.size();
            ret++;
            while(sz--)
            {
                auto [a,b]=q.front();q.pop();
                for(int i=0;i<4;i++)
                {
                    int x=a+dx[i],y=b+dy[i];
                    if(x>=0 && x<m && y>=0 && y<n && grid[x][y]==1 && !vis[x][y])
                    {
                        q.push({x,y});
                        vis[x][y]=true;
                    }
                }
            }
        }

        for(int i=0;i<m;i++)
        {
            for(int j=0;j<n;j++)
            {
                if(grid[i][j]==1 && !vis[i][j])
                {
                    return -1;
                }
            }
        }
        return ret-1;
    }
};

015

孩子们的游戏(圆圈中最后剩下的数)_牛客题霸_牛客网 (nowcoder.com)

题目:

题解:

1.环形链表模拟:构建好环形链表后,沿着链表边遍历边删除节点。

2.递推/递归/动态规划

dp[i]表示:有i个孩子围成一圈时,最终剩下的孩子的编号是多少

每减少一个孩子时,同一编号对应的下标会改变,改变也是有规律的,也就是下标映射,根据下标映射,可得出状态转移方程。

//环形链表
class Solution {
public:
    struct Node
    {
        int val;
        Node* next;
        Node(int x)
        :val(x)
        ,next(nullptr)
        {}
    };
    int LastRemaining_Solution(int n, int m) 
    {
        Node* head=new Node(0);
        Node* cur=head;
        for(int i=1;i<n;i++)
        {
            cur->next=new Node(i);
            cur=cur->next;
        }
        cur->next=head;

    cur = head;  
    Node* prev = nullptr;  
  
    while (cur->next != cur) {  // 至少还有两个人在环中  
        for (int i = 1; i < m; i++) {  // 报数,找到第m个人  
            prev = cur;  
            cur = cur->next;  
        }  
        prev->next = cur->next;  // 从环中删除出列的人  
        delete cur;  // 释放内存  
        cur = prev->next;  // 从下一个人开始报数  
    }  
    return cur->val;
    delete cur;  // 释放最后一个节点的内存  
    }
};



 

//动态规划
class Solution {
public:
    int LastRemaining_Solution(int n, int m) 
    {
        int f=0;
        for(int i=2;i<=n;i++)
        {
            f=(f+m)%i;
        }
        return f;
    }
};

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

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

相关文章

VSCode通过跳板机免密连接远程服务器的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

JS -正则表达式

正则表达式 关于正则表达式&#xff0c;其实我写过几篇了&#xff0c;但是真正的正则表达式其实主要用于定义一些字符串的规则&#xff0c;计算机根据给出的正则表达式&#xff0c;来检查一个字符串是否符合规则。 我们来看一下&#xff0c;在JS中如何创建正则表达式对象。 语…

北京筑龙当选中招协第二届招标采购数字化专业委员会执行主任单位

4月18-19日&#xff0c;中国招标投标协会&#xff08;以下简称中招协&#xff09;2024年年会在宁波召开&#xff0c;北京筑龙作为中招协理事会员单位受邀出席会议。会议期间举行了“电子招标采购专业委员会换届会议暨第二届第一次工作会议”&#xff0c;北京筑龙当选第二届招标…

JavaScript 计算颜色的相对亮度,并确定相应的文本颜色

JavaScript 计算颜色的相对亮度&#xff0c;并确定相应的颜色 一、需求内容 需求点&#xff1a;给出一组颜色列表&#xff0c;渲染对应的颜色以及颜色值&#xff0c;但是要保证文本颜色和背景色不冲突&#xff0c;文本颜色保持 black 和 white 两种即可 示例如下&#xff1a…

误差的一阶和二阶——MSE/MAE

variance和bias MSE之前&#xff0c;先看两个更为朴素的指标&#xff1a;variance和bias。 在打靶中&#xff0c;有的人所有的子弹都离靶心很远&#xff0c;偏差显然过高&#xff0c;但是很稳定地维持在某一点附近&#xff1b;有的人平均环数更高&#xff0c;但是分布太过分散…

电磁兼容(EMC):静电放电(ESD)抗扰度试验深度解读(六)

目录 1. 静电测试干扰方式 2. 案例一 3. 案例二 4. 案例三 5. 案例四 6. 总结 静电放电测试的复杂性决定了这项测试对产品的主要影响方式也是多样的。标准里介绍了几种常见的影响方式&#xff1a; 1. 静电测试干扰方式 在静电放电试验中&#xff0c;测试了受试设备对于…

自然语言处理 (NLP) 的技术演变史

一、简述 本文的目标是了解自然语言处理 (NLP) 的历史&#xff0c;包括 Transformer 体系结构如何彻底改变该领域并帮助我们创建大型语言模型 (LLM)。 基础模型&#xff08;如 GPT-4&#xff09;是最先进的自然语言处理模型&#xff0c;旨在理解、生成人类语言并与之交互。 要理…

倍思、南卡、Cleer开放式耳机怎么样?三大网红真实数据测评PK

​作为一名在数码产品评测领域耕耘五载的专业人士&#xff0c;我有幸涉足各类蓝牙耳机的深度测评&#xff0c;涉猎范围广泛&#xff0c;从崭露头角的新锐品牌直至业界巨擘的旗舰之作&#xff0c;无一不在我的评测之列。鉴于近期对开放式耳机类咨询热度不减&#xff0c;我决定开…

Kafka 可视化管理工具 CMAK 启动错误 -- 命令行太长 问题解决

一、安装环境描述&#xff1a; Kafka版本&#xff1a;kafka_2.13-2.8.1cmak 版本&#xff1a;cmak-3.0.0.6安装环境&#xff1a;windows 11 二、问题描述 当我们在 命令行启动 cmak.bat 命令时&#xff0c;会报如下错误&#xff1a; 命令行太长三、解决办法 修改 cmak.bat…

C#设计树形程序界面的方法:创建特殊窗体

目录 1.TreeView控件 2.实例 &#xff08;1&#xff09;Resources.Designer.cs &#xff08;2&#xff09;Form1.Designer.cs &#xff08;3&#xff09;Form1.cs &#xff08;4&#xff09;生成效果 以树形来显示程序的菜单&#xff0c;可以更直观、更快捷地对窗体进行…

Python 面向对象——5.多态

本章学习链接如下&#xff1a; Python 面向对象——1.基本概念 Python 面向对象——2.类与对象实例属性补充解释&#xff0c;self的作用等 Python 面向对象——3.实例方法&#xff0c;类方法与静态方法 Python 面向对象——4.继承 1.基本概念 多态是面向对象编程&#x…

【智慧园区、低碳园区】工业园区综合能源管理系统解决方案

安科瑞薛瑶瑶18701709087 ◆行业特点 产业园区是国民经济发展的重要载体, 同时也是重点用能企业聚集地。园区面积大&#xff0c;供电距离远&#xff0c;建筑多且分散&#xff0c;用电负荷种类多&#xff0c;用电负荷不均匀&#xff0c;园区配电结构应整体规划&#xff0c;统一…

Xshell7免费版下载及安装(详细教程)

Xshell7免费版下载及安装&#xff08;详细教程&#xff09; 一、下载及安装 1.打开官网下载 https://www.xshell.com/zh/free-for-home-school/ 2.选择合适的下载路径 点击下载按钮 开始下载 3.下载完成后 我们双击打开.exe文件 点击下一步 4.点击我同意 点击下一步 5.选择合…

第九讲 - Java面向对象

第九讲 - Java面向对象 文章目录 第九讲 - Java面向对象1. 类和对象1.1 类和对象的理解1.2 类的定义1.3 对象的使用1.4 学生对象-练习 2. 对象内存图2.1 单个对象内存图2.2 多个对象内存图 3. 成员变量和局部变量3.1 成员变量和局部变量的区别 4. 封装4.1 封装思想4.2 private关…

IIS中搭建.Net Core项目,步骤详解

一、准备服务器 1&#xff09;安装IIS 这个比较简单&#xff0c;百度一下就行 2&#xff09;安装 .NET Core 运行时 下载地址&#xff1a;下载 .NET(Linux、macOS 和 Windows) 因为我是本地开发&#xff0c;所以我下载的是SDK 安装成功之后显示如下&#xff1a; 检查是否安装…

浏览器兼容模式怎么设置?4个提升网页兼容性秘笈分享!

“不知道怎么回事&#xff0c;我打开浏览器的时候总是显示浏览器不兼容&#xff0c;是什么情况呢&#xff1f;我应该怎么操作才能解决这个问题呀&#xff1f;” 浏览器兼容模式是一种使浏览器能够更好地显示网页内容、提高网页加载速度并减少错误的功能。 不同浏览器设置兼容模…

探索HSE化工安全系统在化工生产中的作用

在现代工业化生产中&#xff0c;化工企业扮演着至关重要的角色&#xff0c;但与此同时&#xff0c;化工安全问题也备受关注。为了保障生产环境的安全&#xff0c;HSE化工安全系统应运而生。本文将详细介绍HSE化工安全系统的功能和优势&#xff0c;让您深入了解其在工业生产中的…

ISPLSI1032E-100LT 封装TQFP100 LATTICE/莱迪斯 IC芯片

ISPLSI1032E-100LT 规格信息&#xff1a; 封装:TQFP 逻辑门数量:6000 含铅标准:Lead free RoHS标准:Compliant 产品生命周期:Not Recommended ISPLSI1032E-100LT 是 Lattice Semiconductor 公司生产的一款 Complex Programmable Logic Device (CPLD)&#xff0c;中文称为复…

AIGC技术:行业应用案例与未来可能性深度解析

随着人工智能技术的飞速发展&#xff0c;AIGC&#xff08;人工智能生成内容&#xff09;技术正日益成为引领内容创作与智能应用的新引擎。在当下&#xff0c;AIGC技术已经取得了一系列令人瞩目的成果&#xff0c;而在未来&#xff0c;它更将展现出无限的可能性&#xff0c;为人…

FebHost:.DE域名能否用于多个市场的国际网站?

.DE德国域名可用于面向多个市场的国际网站&#xff0c;但重要的是要考虑有效的国际搜索引擎优化的影响和策略。下面介绍在这种情况下如何利用 .DE 域名&#xff1a; 本地信任和信誉&#xff1a; .DE 域名可以向用户和搜索引擎表明&#xff0c;您的网站是为德国市场量身定制的。…