【每日刷题】Day90

news2024/9/20 20:36:42

【每日刷题】Day90

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

🌼文章目录🌼

1. 单词缩写_牛客题霸_牛客网 (nowcoder.com)

2. 面试题 01.03. URL化 - 力扣(LeetCode)

3. 面试题 01.06. 字符串压缩 - 力扣(LeetCode)

1. 单词缩写_牛客题霸_牛客网 (nowcoder.com)

//思路:遍历+构造。

//遍历原字符串,计算除首尾外字符个数,将个数转换为字符串插入结果字符串中,再将原字符串首尾字符插入结果字符串首尾。

#include <iostream>

#include <string>

using namespace std;

int main()

{

    int n = 0;

    cin >> n;

//将'\0'捕获

    getchar();

    while (n--)

    {

        string s;

        string ans;

        getline(cin, s);

//长度<10直接输出

        if(s.size()<10)

            cout<<s<<endl;

        else

        {

            int size = s.size()-2;

            int flag = size+1;

            string tmp1;

//将个数转换为字符串

            while(size)

            {

                char tmp = size%10+'0';

                tmp1.insert(tmp1.begin(),tmp);

                size/=10;

            }

//插入操作

            ans.insert(0,tmp1);

            ans.insert(0,1,s[0]);

            ans.insert(ans.size(),1,s[flag]);

            cout<<ans<<endl;

        }

    }

    return 0;

}

2. 面试题 01.03. URL化 - 力扣(LeetCode)

//思路:遍历+构造。

//遍历S构造ans,遇到' '时,ans插入"%20";否则直接插入S当前字符

class Solution {

public:

    string replaceSpaces(string S, int length)

    {

        string ans;

        for(int i = 0;i<length;i++)

        {

            if(S[i]==' ')

                ans+="%20";

            else

                ans.push_back(S[i]);

        }

        return ans;

    }

};

3. 面试题 01.06. 字符串压缩 - 力扣(LeetCode)

//思路:遍历+构造。

//遍历字符串S,使用flag记录当前字符(初始记录S[0]),num记录当前字符出现次数(初始为1),当遍历到与flag不同的字符时,将flag插入ans,再将num以字符形式插入ans,更新flag,将num置为1,重复上述过程,直到遍历完S。

//当遍历完S后需要将最后记录的flag和num再插入ans。

class Solution {

public:

    string compressString(string S)

    {

        if(!S.size())

            return S;

        string ans;

//记录当前字符,初始为S[0]

        char flag = S[0];

//记录当前字符的出现次数

        int num = 1;

        for(int i = 1;i<S.size();i++)

        {

//相同字符则继续遍历,num++

            if(S[i]==flag)

                num++;

            else

            {

//遇到不同的将flag插入ans

                ans.push_back(flag);

                string tmp;

//将num以字符形式插入ans

                while(num)

                {

                    char tmp1 = num%10+'0';

                    tmp.insert(0,1,tmp1);

                    num/=10;

                }

                ans+=tmp;

//更新flag和num

                flag = S[i];

                num = 1;

            }

        }

//遍历完后将最后记录的tmp和num插入ans

        ans.push_back(flag);

        string tmp;

        while(num)

        {

            char tmp1 = num%10+'0';

            tmp.insert(0,1,tmp1);

            num/=10;

        }

        ans+=tmp;

        if(ans.size()>=S.size())

            return S;

        return ans;

    }

};

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

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

相关文章

深度剖析Google黑科技RB-Modulation:告别繁琐训练,拥抱无限创意生成和风格迁移!

给定单个参考图像,RB-Modulation提供了一个无需训练的即插即用解决方案,用于(a)风格化和(b)具有各种提示的内容样式组合,同时保持样本多样性和提示对齐。例如,给定参考样式图像(例如“熔化的黄金3d渲染样式”)和内容图像(例如(a)“狗”),RB-Modulation方法可以坚持所需的提…

内存泄漏 与 内存溢出

1.内存溢出(Memory Overflow) 生活样例&#xff1a; 内存容量就像一个桶&#xff0c;内存就是水&#xff0c;水 溢出 就是水满了。定义: 内存溢出是指程序试图使用超过其可用内存限制的内存。这种情况通常会导致程序崩溃或异常。内存溢出一般是由于分配了过多…

Mixture of Experts with Attention论文解读

注意这篇论文没有代码&#xff0c;文章所谓的注意力是加性注意力&#xff0c;找scaled dot-product的伙计可以避坑了&#xff0c;但还是有值得学习的地方。 score是啥&#xff1f; 这个score标量怎么计算得到&#xff0c;请假设一下x和z的值&#xff0c;计算演示一下 expert是…

第十二章(重点 元数据管理)

语境关系图&#xff1a; 1. 元数据概念&#xff1a; 元数据从技术的角度叫元数据 从业务的角度叫数据资源管理目录 技术 元数据 业务 数据资源管理目录 但是并不是数据资产目录 如果没有可靠的原数据&#xff0c;组织就不知道它拥有什么数据&#xff0c;数据表示什么&#xff…

运行ruoyi

创建数据库 根据ry_20240629.sql创建ry-cloud数据库 根据ry_config_20231204.sql创建ry-config数据库 nacos 数据库配置 修改nacos/conf/application.properties 单机版运行 startup.cmd -m standalone redis 运行后端 运行gateway,auth,modules/system模块 可能遇到的问…

怎么给电脑选一款合适的固态硬盘?就看这个参数!

前言 前段时间有很多小伙伴找小白修电脑&#xff0c;在修电脑的过程中&#xff0c;小白也会稍微看一下硬件配置。 小白就发现一个事情&#xff1a;很多小伙伴其实都不太懂电脑硬件。 为啥这么说呢&#xff1f;简单来说就是主板上使用了“不合适”的固态硬盘作为主系统硬盘。…

VulnHub-Tomato靶机渗透教程 简单易懂 报错链接

Tomato靶机是一个用于渗透测试和漏洞研究的虚拟机。 环境准备 攻击机&#xff08;Kali Linux&#xff09;IP&#xff1a;192.168.252.134 目标机 IP&#xff1a;192.168.252.133 这里我两台虚拟机都是NAT模式 渗透步骤 1.端口扫描 这里我没用kali自带的 我用的物理机上…

【Python学习手册(第四版)】学习笔记12.1-语法规则拓展

个人总结难免疏漏&#xff0c;请多包涵。更多内容请查看原文。本文以及学习笔记系列仅用于个人学习、研究交流。 本文是对【学习笔记10】-语句编写的通用规则 介绍过的语法概念进行复习并扩展。非常简单&#xff0c;应该是我写过的最简单的文章&#xff0c;阅读时间&#xff1a…

学习Mybatis及其简单配置

目录 JDBC的弊端 为什么要有ORM模型&#xff1f; 什么是ORM模型&#xff1f; Mybatis和hibernate 区别: Mybatis解决了jdbc的问题 为什么选择myBatis&#xff08;优势&#xff09;&#xff1f; 什么是MyBatis 主配置文件&#xff08;config文件&#xff09; Mapper文件…

TwinCAT3 C++环境安装教程

文章目录 下载windos插件:下载地址&#xff0c;安装这个插件是为了能在 TwinACT 3 工程环境创建和编辑 C模块。 点击下载的文件&#xff0c;打开其中的KitSetup.exe 在打开的窗口中选择"Build Environment"后点击OK 弹出的窗口点击ok 选择“I agree”后点击…

从零逐步实现SVM(含公式推导)上

支持向量机&#xff08;SVM&#xff09;相关概念 支持向量&#xff1a;支持或支撑平面上把两类类别划分开的超平面的向量点线性可分支持向量机&#xff1a;通过硬间隔最大化&#xff0c;学习一个线性分类器线性支持向量机&#xff1a;通过软间隔最大&#xff0c;学习一个线性分…

掌握时间的秘密:pytz 库的神奇之旅

文章目录 掌握时间的秘密&#xff1a;pytz 库的神奇之旅背景&#xff1a;为何选择 pytz&#xff1f;pytz 库是什么&#xff1f;如何安装 pytz&#xff1f;函数的使用方法场景应用常见问题与解决方案总结 掌握时间的秘密&#xff1a;pytz 库的神奇之旅 背景&#xff1a;为何选择…

【Vue3】默认插槽

【Vue3】默认插槽 背景简介开发环境开发步骤及源码 背景 随着年龄的增长&#xff0c;很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来&#xff0c;技术出身的人总是很难放下一些执念&#xff0c;遂将这些知识整理成文&#xff0c;以纪念曾经努力学习奋斗的日子。本文内…

学习c语言第18天(字符串和内存函数)

1.函数介绍 1.1 strlen size_t(就是无符号整形) strlen(const char * str); 字符串已经\0作为结束标志&#xff0c;strlen函数返回的是在字符串中\0前面出现的字符个数(不包 含\0) 参数指向的字符串必须要以\0结束。 注意函数的返回值为size_t&#xff0c;…

Java并发—Java内存模型以及线程安全

目录 一、Java内存模型 JMM的核心概念 二、什么是线程安全&#xff1f; 1、原子性 2、有序性 3、可见性 三、如何确保线程安全&#xff1f; 1、sychronized关键字 2、Lock接口和其实现 3、volatile关键字 4、Atomic原子类 5、ThreadLocal 6、不可变对象 7、并发集…

电商数据采集封装API的详细步骤分享(API测试实例)

在当今的电商行业中&#xff0c;数据采集已成为企业获取市场洞察、优化运营策略、提升用户体验的重要手段。而封装电商数据采集的API接口&#xff0c;则是将这一复杂过程标准化、模块化的有效方式。本文将详细分享电商数据采集封装API的步骤&#xff0c;并通过一个实际的API测试…

努力努力努力的第十四天(2024.7.31)

昨天日期写错了写成2020.7.30,应该是2024.7.31&#xff08;手滑了哈哈哈&#xff09; 1.行列转换 效果演示&#xff1a; 这是未经行列转换操作的t_score表&#xff1a; 这是经过行列转换后的t_score表&#xff1a; 第一步&#xff1a;确定初步的做法 使用分组查询(group by…

20240731在WIN10下数框框的方法【CPU】

20240731在WIN10下数框框的方法【CPU】 2024/7/31 20:14 百度&#xff1a;WINDOWs 10 多核CPU 数框框 win10怎么数框框 1、首先打开win10系统&#xff0c;进入任务管理器。 2、其次点击CPU使用率窗口&#xff0c;鼠标悬停在右边的窗口按右键。 3、最后将图形更改为&#xff1a;…

【计算机网络】http协议的原理与应用,https是如何保证安全传输的

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

优化|高性能模块预测控制求解器

本文介绍的是另外一种针对模块控制MPC问题的一种高效求解方法。High-Performance Small-Scale Solvers for Linear Model Predictive Control&#xff0c;Gianluca Frison, Hans Henrik Brandenborg Srensen, Bernd Dammann, John Bagterp Jrgensen [1]。本文讲了HPIPM的前身&a…