当前位置: 首页 > news >正文

20230821-字符串相乘-给树命名(unordered_map)

字符串相乘

有两个非负整数字符串num1,num2,计算num1和num2所表达整数的乘积,结果以字符串形式存储。注意:不能通过强制转换方法解题。
示例1:
输入:
"4", "3"
输出:
"12"
代码:

class Solution {
public:// 两个数字相乘,所得乘积的位数小于等于两个数的位数之和。则预留与两数位数之和相等的空间则足够使用string multiply(string num1, string num2) {int size1 = num1.size();int size2 = num2.size();string res(size1 + size2, '0');for(int i = size1 - 1; i >= 0; i--){for(int j = size2 - 1; j >= 0; j--){res[i + j + 1]=(res[i + j + 1] - '0')+((num1[i] - '0')*(num2[j] - '0'));//注意这里要使用数字运算res[i + j] += (res[i + j + 1] / 10);res[i + j + 1]=(res[i + j + 1] % 10) + '0';//这里载入的是字得}}for(int i = 0; i < size1 + size2; ++i){if(res[i] != '0')return res.substr(i);}return "0";}
};

给树命名

现在需要给n棵树命名,你收集了n个名字(名字为字符串,存在重复的名字)并放在长度为n的vector中,第i棵树为vector中下标为i对应的字符串。每棵树的名字是不能重复的,因此如果发现当前数的名字已经被使用了,那么可以在名字后面加入后缀 (m),其中m是正整数,并且在满足名字唯一条件下m要尽可能小。
返回一个字符串vector,长度为n,其中下标为i对应的字符串为第i棵树的名字。
示例1:
输入
["pddd", "fdaf", "fdaf", "fdsfsd"]
输出
["pddd", "fdaf", "fdaf(1)", "fdsfsd"]
代码:

class Solution{
public:vector<string> GetTreeNames(vector<string>& names) {unordered_map<string, int> data;vector<string> res;for(string& str : names){		if(data[str] > 0)str = str + "(" + to_string(data[str]) + ")"res.push_back(str);data[str]++;}return res;}
}
http://www.lryc.cn/news/134906.html

相关文章:

  • [Go版]算法通关村第十二关黄金——字符串冲刺题
  • neovim为工作区添加本地clangd配置
  • 信号处理--基于EEG脑电信号的眼睛状态的分析
  • Redis高可用:主从复制详解
  • [Flutter]有的时候调用setState(() {})报错?
  • 利用屏幕水印学习英语单词,无打扰英语单词学习
  • 开学必备物品清单!这几款优先考虑!
  • 聊聊调制解调器
  • Go语言入门指南:基础语法和常用特性(下)
  • 【MFC常用问题记录】
  • ThreadLocal内存泄漏问题
  • 微服务基础概念【内含图解】
  • Dockerfile创建 LNMP 服务+Wordpress 网站平台
  • 消息中间件篇
  • 基本定时器
  • MySQL 中文全文检索
  • Redis——list类型详解
  • npm 安装 git 仓库包
  • 问题来了!你知道你穿的防砸劳保鞋的保护包头都是什么材料
  • 计算机网络-物理层(三)编码与调制
  • Linux面试笔试题(6)
  • qt中窗口的布局
  • 玄子Share - HTML Emmet 语法详细介绍
  • Linux上安装和使用git到gitoschina和github上_亲测
  • 合宙Air724UG LuatOS-Air LVGL API--简介
  • 「Vue|网页开发|前端开发」01 快速入门:用vue-cli快速写一个Vue的HelloWorld项目
  • 7.5.tensorRT高级(2)-RAII接口模式下的生产者消费者多batch实现
  • 华为OD-最大括号深度
  • 【Leetcode】108. 将有序数组转换为二叉搜索树
  • 【树莓派打怪升级】:玩转个人Web世界!