發表文章

目前顯示的是有「OJ」標籤的文章

[程式設計]15. 3Sum

圖片
簡介 3Sum 是 LeetCode 的一道面試題,難度為「難」。 題目是這麼說的 給一個陣列,包含了 n 個整數 (有正數,也有負數)。 請在裏面找 3 個數,x,y 以及 z,滿足  x + y + z = 0。 此外還要求找出的 x, y, z 不可以重覆。 例如在底下的陣列中 [-4, -1 , -1 , 0, 1, 2] 你可以湊出 2 個 [ -1 , 0, 1] 以及 [ -1 , 0, 1] 但其實另一個 [-1, 0, 1] 是不必要的。 這個問題難在面試時,公司要求寫出「有效率」的程式碼。 但這題要如何有效率解出,是有難度的。 就直覺來說,我們會使用 3 層迴圈來搞定,程式碼如下所示:

[程式設計] UVa 介紹,以及 UDebug 和其他輔助工具的介紹

圖片
UVa 是一個線上解題系統 (online judge system),依 維基百科 的說法,它是西班牙瓦雅多利大學教授Miguel Ángel Revilla在1995年所創建的一個自動化線上的評測系統。 UVa 目前收錄了數千多道題目,大部分都需要一點演算法基礎才能解得出來。網站上提供了 C/C++,Java,Pascal 以及 Python 的評測環境。UVa 目前收錄了許多國際賽 ICPC 的題目。是個適合練功的好所在