牛客NC275 和为S的两个数字【简单 map C++/Java/Go/PHP】

题目

在这里插入图片描述
题目链接:
https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b

思路

map

参考答案C++

#include <vector>
class Solution {public:vector<int> FindNumbersWithSum(vector<int> array, int sum) {vector<int> ans;map<int, int> map1;for (int i = 0; i < array.size(); i++) {auto it = map1.find(sum - array[i]);if (it != map1.end()){if(it->first == sum-array[i]){ans.push_back(sum-array[i]);ans.push_back(array[i]);break;}    }map1[array[i]] = array[i];}return ans;}
};

参考答案Java

import java.util.*;
import java.util.ArrayList;
public class Solution {public ArrayList<Integer> FindNumbersWithSum(int [] array, int sum) {ArrayList<Integer>  ans = new ArrayList<>();Map<Integer, Integer> map = new HashMap<>();for (int v : array) {if (map.containsKey(sum - v)) {ans.add(sum - v);ans.add(v);break;}map.put(v, v);}return ans;}
}

参考答案Go

package main/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* * @param array int整型一维数组 * @param sum int整型 * @return int整型一维数组
*/
func FindNumbersWithSum( array []int ,  sum int ) []int {ans:=[]int{}map1:=map[int]int{}for _,v:=range array {_,exist:= map1[sum-v] if exist {ans= append(ans, sum-v)ans=append(ans, v)break}map1[v]=v}return ans 
}

参考答案PHP

<?php/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* * @param array int整型一维数组 * @param sum int整型 * @return int整型一维数组*/
function FindNumbersWithSum( $array ,  $sum )
{$ans = [];$map = [];foreach($array as $v){if(isset($map[$sum-$v])){$ans[0] = $sum-$v;$ans[1] = $v;break;}$map[$v] = $v;}return  $ans;
}

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

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

相关文章

Java并发代码入门

Java并发代码入门 1. 第一个线程2. Java创建线程的5种方式3. 多线程优势代码4. 线程的属性5. 中断线程1. 使用自定义的变量来作为标志位2. Thread.interrupted() 或者Thread.currentThread().isInterrupted() 代替自定义标志位 6. join2.5 等待一个线程-join()A中调用B.join表示…

【iOS】NSOperation、NSOperationQueue

文章目录 前言一、NSOperation、NSOperationQueue 简介二、NSOperation、NSOperationQueue 操作和操作队列三、NSOperation四、NSOperationQueue五、NSOperationQueue 控制串行执行、并发执行六、 NSOperation 操作依赖七、NSOperation 优先级八、NSOperation、NSOperationQueu…

一个JDBC小工具

pom.xml 结构 <properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mysql5>5.1.44<…

服务器端优化-Redis内存划分和内存配置

6、服务器端优化-Redis内存划分和内存配置 当Redis内存不足时&#xff0c;可能导致Key频繁被删除、响应时间变长、QPS不稳定等问题。当内存使用率达到90%以上时就需要我们警惕&#xff0c;并快速定位到内存占用的原因。 有关碎片问题分析 Redis底层分配并不是这个key有多大&…

[信息收集]-端口扫描--Nmap

端口号 端口号的概念属于计算机网络的传输层&#xff0c;标识这些不同的应用程序和服务而存在的。通过使用不同的端口号&#xff0c;传输层可以将接收到的数据包准确地传递给目标应用程序。 80&#xff1a;HTTP&#xff08;超文本传输协议&#xff09;用于Web浏览器访问网页 …

淘宝商家联系方式获取工具解析 淘宝商家采集工具分享

淘宝商家联系方式获取工具是一种用于获取淘宝商家联系方式的软件工具。它可以帮助用户从淘宝网上采集商家的联系方式&#xff0c;如店铺名称、联系人姓名、电话号码、微信号等。 这种工具的原理通常是通过模拟用户在淘宝搜索商家和访问商家店铺的行为&#xff0c;然后从店铺页…

【信息系统项目管理师练习题】资源管理

马斯洛需求层次理论中,下列哪种需求属于最高层次的需求? A) 生理需求 B) 安全需求 C) 社会交往的需求 D) 自我实现的需求 答案:D) 自我实现的需求 根据赫兹伯格双因素理论,下列关于激励因素和保健因素的说法正确的是: A) 激励因素能够消除工作中的不满意,保健因素…

jvm面试题30问

什么是JVM的跨平台&#xff1f; 什么是JVM的语言无关性&#xff1f; 什么是JVM的解释执行 什么是JIT? JIT&#xff1a;在Java编程语言和环境中&#xff0c;即时编译器&#xff08;JIT compiler&#xff0c;just-in-time compiler&#xff09;是一个把Java的字节码&#xff08;…

【挑战30天首通《谷粒商城》】-【第一天】02、简介-项目整体效果展示

文章目录 课程介绍 ( 本章了解即可&#xff0c;可以略过)一、 分布式基础 (全栈开发篇) (初中级)二、 分布式高级 (微服务架构篇) ( 高级)三、高可用集群 (架构师提升篇)( 架构 ) one more thing 课程介绍 ( 本章了解即可&#xff0c;可以略过) 1.分布式基础(全栈开发篇)2.分布…

git merge 命令合并指定分支到当前分支

git merge 是一个用于合并两个分支的 Git 命令。当你在不同的分支上工作时&#xff0c;可能会有一些不同的更改。使用 git merge 可以将这些更改合并到一起。以下是一些常见的 git merge 用法示例&#xff1a; 1. 合并当前分支与另一个分支的更改 git merge <branch-name&…

Fireworks AI和MongoDB:依托您的数据,借助优质模型,助力您开发高速AI应用

我们欣然宣布 MongoDB与 Fireworks AI 正携手合作 让客户能够利用生成式人工智能 (AI) 更快速、更高效、更安全地开展创新活动 Fireworks AI由 Meta旗下 PyTorch团队的行业资深人士于 2022 年底创立&#xff0c;他们在团队中主要负责优化性能、提升开发者体验以及大规模运…

Ubuntu22.04有线网络连接但是没网,网络图标显示问号

Ubuntu22.04有线网络连接但是没网&#xff0c;网络图标显示问号 问题描述解决方案 问题描述 有线网络连接 但是没网 且网络图标显示问号 解决方案 进入设置->隐私->在 连接情况 中关闭连接检查 关闭后 网络正常

Typescript语法三

枚举 枚举&#xff08;Enumeration&#xff09;是编程语⾔中常⻅的⼀种数据类型&#xff0c;其主要功能是定义⼀组有限的选项&#xff0c;例 如&#xff0c;⽅向&#xff08;上、下、左、右&#xff09;或季节&#xff08;春、夏、秋、冬&#xff09;等概念都可以使⽤枚举类型…

vue 时间轴页面 自己的写法 欢迎交流指正

<div class"first-box"><!--贯穿线--><div class"vertical-line-wrap"><div class"vertical-line"></div><div class"vertical-line-arrow"></div></div><!--开始--><div c…

理解 C++ 中的 “placement new“ 和 `reinterpret_cast`

概述 在 C 编程中&#xff0c;我们经常会遇到需要进行低级内存操作的情况。在这种情况下&#xff0c;了解和正确使用工具变得至关重要&#xff0c;以确保我们的代码既高效又安全。本文将深入探讨两个在 C 中经常用于低级内存操作的工具&#xff1a;“placement new” 和 reint…

用于图生成的自回归扩散模型 笔记

1 Title Autoregressive Diffusion Model for Graph Generation&#xff08;Lingkai Kong、Jiaming Cui、Haotian Sun、Yuchen Zhuang、B. Aditya Prakash、Chao Zhang&#xff09;【PMLR 2022】 2 Conclusion This study propose an autoregressive diffusion model …

iOS ------ JSONModel源码

一&#xff0c;JSONModel的基本使用 1&#xff0c;基本使用方法 - (instancetype)initWithDictionary:(NSDictionary *)dict error:(NSError **)err; - (instancetype)initWithData:(NSData *)data error:(NSError **)error; - (instancetype)initWithString:(NSString *)str…

Python深度学习基于Tensorflow(3)Tensorflow 构建模型

文章目录 数据导入和数据可视化数据集制作以及预处理模型结构低阶 API 构建模型中阶 API 构建模型高阶 API 构建模型保存和导入模型 这里以实际项目CIFAR-10为例&#xff0c;分别使用低阶&#xff0c;中阶&#xff0c;高阶 API 搭建模型。 这里以CIFAR-10为数据集&#xff0c;C…

9.4.k8s的控制器资源(job控制器,cronjob控制器)

目录 一、job控制器 二、cronjob控制器 一、job控制器 job控制器就是一次性任务的pod控制器&#xff0c;pod完成作业后不会重启&#xff0c;其重启策略是&#xff1a;Never&#xff1b; 简单案例 启动一个pod&#xff0c;执行完成一个事件&#xff0c;然后pod关闭&#xff1b;…

初识指针(2)<C语言>

前言 前文介绍完了一些指针基本概念&#xff0c;下面介绍一下&#xff0c;const关键字、指针的运算、野指针的成因以及避免&#xff0c;assert函数等。 目录 const&#xff08;常属性&#xff09; 变量的常属性 指针的常属性 指针的运算 ①指针 -整数 ②指针-指针 ③指针与…