這是我在51nod上做的第一道一級演算法題,感覺51nod的低階題也沒那麼難嘛,這就是一道划水題,簡單的二分查詢就可解了。
我有兩種解法,第一種想來效率沒二分高,就是排序後分別從頭和從後遍歷,然後頭指標只能向後,尾指標只能向前,這樣就避免了一些重複,但是具體會不會tle就沒去嘗試了。
第二種解法就是二分查詢,我是在二分裡揉進了第一種的思想,也避免了一部分重複,當然其實對於二分而言這點小重複也不會有太大的影響了,畢竟是o(log n)的複雜度。然後如果前後指標相遇的時候就不用重複了,所以我的複雜度應該是o(nlogn)
題目如下:
1001 陣列中和等於K的數對
1001 陣列中和等於k的數對 基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 給出乙個整數k和乙個無序陣列a,a的元素為n個互不相同的整數,找出陣列a中所有和等於k的數對。例如k 8,陣列a 所有和等於8的數對包括 1,9 0,8 2,6 3,5 input 第1...
1001 陣列中和等於K的數對
基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 給出乙個整數k和乙個無序陣列a,a的元素為n個互不相同的整數,找出陣列a中所有和等於k的數對。例如k 8,陣列a 所有和等於8的數對包括 1,9 0,8 2,6 3,5 input 第1行 用空格隔開的2個數,k n,...
1001 陣列中和等於K的數對
給出乙個整數k和乙個無序陣列a,a的元素為n個互不相同的整數,找出陣列a中所有和等於k的數對。例如k 8,陣列a 所有和等於8的數對包括 1,9 0,8 2,6 3,5 input 第1行 用空格隔開的2個數,k n,n為a陣列的長度。2 n 50000,10 9 k 10 9 第2 n 1行 a陣...