一本通 1244 和為給定數

2021-10-03 05:06:12 字數 733 閱讀 6375

時間限制: 1000 ms         記憶體限制: 65536 kb

提交數: 5245     通過數: 1838給出若干個整數,詢問其中是否有一對數的和等於給定的數。

第一行是整數n(0 < n ≤ 100,000),表示有n個整數。

第二行是n個整數。整數的範圍是在00 到108108 之間。

第三行是乙個整數m(0≤m≤230)m(0≤m≤230) ,表示需要得到的和。

若存在和為m的數對,輸出兩個整數,小的在前,大的在後,中間用單個空格隔開。若有多個數對滿足條件,選擇數對中較小的數更小的。若找不到符合要求的數對,輸出一行no。

4

2 5 1 4

6

1 5

no#include#define maxn 110000

using namespace std;

long long a[maxn];

long long b[maxn],n;

void mergesort(long long left,long long mid,long long right)

while(i<=mid) a[k++]=b[i++];

while(j<=right) a[k++]=b[j++];

return ;

}void merge(long long left,long long right)

else

}cout<<"no"<

1244 和為給定數 2020 12 28

1244 和為給定數 時間限制 1000 ms 記憶體限制 65536 kb 題目描述 給出若干個整數,詢問其中是否有一對數的和等於給定的數。輸入 第一行是整數n 0 n 100,000 表示有n個整數。第二行是n個整數。整數的範圍是在0到108之間。第三行是乙個整數m 0 m 230 表示需要得到...

分治 一本通1244

分治就是把一組大資料分成小資料管理,如1000可以分成1 500,501 1000分開操作。給出若干個整數,詢問其中是否有一對數的和等於給定的數。第一行是整數n 0 n 100,000 表示有n個整數。第二行是n個整數。整數的範圍是在0 0 0到10 8 108 108之間。第三行是乙個整數m 0 ...

和為給定數

總時間限制 1000ms 記憶體限制 65536kb 描述給出若干個整數,詢問其中是否有一對數的和等於給定的數。輸入共三行 第一行是整數n 0 n 100,000 表示有n個整數。第二行是n個整數。整數的範圍是在0到10 8之間。第三行是乙個整數m 0 m 2 30 表示需要得到的和。輸出若存在和為...