大型网站建设兴田德润优惠奢侈品回收
web/
2025/10/4 1:32:33/
文章来源:
大型网站建设兴田德润优惠,奢侈品回收,广告设计毕业设计作品,网站建设和假设2023. 连接后等于目标字符串的字符串对
给你一个 数字 字符串数组 nums 和一个 数字 字符串 target #xff0c;请你返回 nums[i] nums[j] #xff08;两个字符串连接#xff09;结果等于 target 的下标 (i, j) #xff08;需满足 i ! j#xff09;的数目。 示例 1…2023. 连接后等于目标字符串的字符串对
给你一个 数字 字符串数组 nums 和一个 数字 字符串 target 请你返回 nums[i] nums[j] 两个字符串连接结果等于 target 的下标 (i, j) 需满足 i ! j的数目。 示例 1输入nums [777,7,77,77], target 7777
输出4
解释符合要求的下标对包括
- (0, 1)777 7
- (1, 0)7 777
- (2, 3)77 77
- (3, 2)77 77示例 2输入nums [123,4,12,34], target 1234
输出2
解释符合要求的下标对包括
- (0, 1)123 4
- (2, 3)12 34示例 3输入nums [1,1,1], target 11
输出6
解释符合要求的下标对包括
- (0, 1)1 1
- (1, 0)1 1
- (0, 2)1 1
- (2, 0)1 1
- (1, 2)1 1
- (2, 1)1 1提示
2 nums.length 1001 nums[i].length 1002 target.length 100nums[i] 和 target 只包含数字。nums[i] 和 target 不含有任何前导 0 。 解题思路
使用map记录每个字符串出现的下标因为可能存在相同的字符串出现在不同下标因此下标使用vector进行维护遍历所有字符串假设其组成的是target的前部分使用map快速判断是否存在其他下标的字符串可以组成target的后部分
例如对于第一个样例
nums [777,7,77,77], target 7777对于nums[0]“777”map中存在“7”可以与其构成“7777”,并且下标与其不相等对于nums[1]“7”map中存在“777”可以与其构成“7777”,并且下标与其不相等对于nums[2]“77”map中存在“77”可以与其构成“77”,只存在一个下标与其不相等所以答案只能加一对于nums[3]“777”map中存在“77”可以与其构成“77”,只存在一个下标与其不相等所以答案只能加一
代码
class Solution {
public:int numOfPairs(vectorstring nums, string target) {mapstring,vectorint m;for (int i 0; i nums.size(); i) {m[nums[i]].push_back(i);}int res(0);for (int i 0; i nums.size(); i) {if (target.size()nums[i].size())continue;string front target.substr(0,nums[i].size());string backtarget.substr(nums[i].size(),target.size()-nums[i].size());if (nums[i]frontm.count(back)){for(auto t:m[back])if (t!i)res;}}return res;}
};
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86532.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!