找出數字元素的下標 歡聚時代2017校招筆試題目

2021-10-03 20:31:23 字數 724 閱讀 6547

讀入乙個有n個數的整形陣列,並給出乙個和值sum,判斷是否存在兩個數字使得它們的和為sum。

輸入資料報括兩行:

第一行兩個整數n(1 ≤ n ≤ 1000),sum(1 ≤ sum ≤ 10 ^ 9)

第二行n個整數,範圍均在32位整數內,以空格分隔

如果找到和值為某值的兩個數,輸出兩個數字的下標(陣列下標從0開始),如果有多解,輸出第乙個數下標最小的那個解;否則輸出false

輸入6 9

2 3 5 6 7 10

輸出0 4

這道題主要是用到map來進行輔助儲存,利用key和value查詢的快捷,可以很快速的通過知道a[i]和sum,來找出那個sum-a[i]。詳情請看**注釋。

c++**如下:

#include

#include

using

namespace std;

intmain()

for(i=

0;i(differ.

count

(sum-a[i]))

//當用sum減去陣列中的乙個元素時,尋找剩下的差值在map中是否存在,

break

;//如果存在則這個數在map中的value就是這個數在陣列中的下標

if(i==n)

cout<<

"false"

cout<" "<]<}

刪除List中的非數字元素

由於list的非執行緒安全特性,在遍歷list的過程中,隨意刪除某個元素是一件很危險的事情,所以在寫 hello world 的時候需要注意一下.function 1.0 使用pattern類可以匹配正規表示式 pattern pattern pattern.compile 0 9 boolean ...

Python 關於set的數字元素的順序問題

無序的這個是str.isspace,看似有序的是str.isascii,除了shell輸入set的變數,是有序顯示,但是無論是str 還是repr 還是list 並非順序顯示 print d isspace print d isascii s isspace r set f eval str.s s...

找出陣列中指定元素的所有下標位置

a.不允許在方法內列印展示 b.考慮多個資料情況 c.需要在方法外獲取到下標資料資訊 d.不允許使用陣列作為返回值 e.乙個方法完成 public class homework2 int indexes newint arr.length 接受方法的返回值,得到的數查詢目標資料的個數 int cou...