【Uva 題庫解題】C++ 個人解題筆記 - part6
【Uva 題庫解題】C++ 個人解題筆記 - part6本次題庫擷取自 CPE 2026/03/24 歷屆考題:https://cpe.mcu.edu.tw/cpe/test_data/2026-03-24 1. Uva 10591 - Happy NumberPDF Source:https://onlinejudge.org/external/105/10591.pdf Uva Online Judge:https://onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=1532 Zerojudge:https://zerojudge.tw/ShowProblem?problemid=d442 難度:★☆☆☆☆ 題目翻譯: 令正整數 $S_0$ 的平方和表示為 $S_1$。同理,令 $S_1$ 的平方和用 $S_2$ 表示,依此類推。若對某個 $i ≥ 1$ 的 $S_i = 1$,則原始整數 $S_0$ ...
【考試向】資料結構筆記(二元搜尋樹)
【考試向】資料結構筆記(二元搜尋樹)歡迎你點入本篇文章!我是 LukeTseng,本系列文章主要整理自學資料結構的一些知識,如果你喜歡我的文章,麻煩您不吝嗇的在文章底下按下一顆愛心,或是追蹤我唷~ (自平衡二元搜尋樹如 AVL Tree 跟紅黑樹會在後續單獨撰寫) 二元搜尋樹(BST, Binary Search Tree)定義簡單來說,二元搜尋樹就是一棵「自帶排序規則」的二元樹。 在二元搜尋樹中,對於樹上的每一個節點,都必須嚴格遵守以下四條規則: 左子樹中所有節點的值,都小於根節點的值。 右子樹中所有節點的值,都大於根節點的值。 左右子樹本身也必須各自是一棵二元搜尋樹。 每個節點的值都不同。 另外,二元搜尋樹也可以是一個空集合,上述為非空集合所要遵循的規則。 如下圖是一棵二元搜尋樹: Image Source:二元搜尋樹 - 維基百科,自由的百科全書 右子樹(根節點的右邊:10、14、13)皆大於根節點的值,而至於那個 13,因為他在左子樹,所以得要小於他的樹根 14,符合 BST 的定義。 左子樹(根節點的左邊:3、1、6、4、7)皆小於根節點的值,其下的左右子樹也都符...
【論文閱讀】FastTracker: Real-Time and Accurate Visual Tracking
【論文閱讀】FastTracker: Real-Time and Accurate Visual Trackingpaper : https://arxiv.org/abs/2508.14370 github : https://github.com/Hamidreza-Hashempoor/FastTracker 註:本文僅供個人學習用途、筆記用,內容斟酌參考,請注意事實查核。(This article is for learning and noting. Content of article consider for reference. Note that fact checking.) 我個人算是 CV 領域的新手,有些我不懂的地方會加上自己寫的註釋,敬請見諒。 Abstract1. Problem: Conventional multi-object tracking (MOT) systems are predominantly designed for pedestrian tracking and often exhibit limited generaliz...
【計算機網路筆記】3.6 Principles of Congestion Control
【計算機網路筆記】3.6 Principles of Congestion ControlHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 3.6.1 The Causes and the Costs of Congestion(壅塞的成因跟代價)回顧: 當進入網路的資料量超過網路(路由器 router、連結 link等)的處理能力,導致路由器緩衝區佇列積壓甚至滿溢,進而引發封包遺失與嚴重延遲的現象,就是網路壅塞。 只要是資源(如頻寬、緩衝區)有限的共享網路環境,當需求大於供給時,都必然會面臨壅塞問題。 術語解析 吞吐量(Throughput):單位時間內成功通過網路的實際數據量(如 Mbps 或 Gbps),反映網路的真實工作效率。 承擔負載(Offered Loa...
【計算機網路筆記】3.5 Connection-Oriented Transport: TCP
【計算機網路筆記】3.5 Connection-Oriented Transport: TCPHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 3.5.1 The TCP Connection(TCP 連線)TCP 連線是一種在兩個通訊端點之間所建立的「邏輯性、全雙工(full-duplex)且點對點(Point-To-Point)」的可靠傳輸管道。 底層的網路層(Network Layer)所使用的網際網路協定(Internet Protocol, IP)只提供盡力而為(best-effort)且不可靠的服務。而 TCP 透過在端點建立連線狀態,補足底層的缺陷,確保資料不會遺失、損壞或失序。 TCP 適用於網頁瀏覽、檔案傳輸等不容許資料遺失的應用。 TCP 最大限制...
【考試向】資料結構筆記(樹及二元樹)
【考試向】資料結構筆記(樹及二元樹)歡迎你點入本篇文章!我是 LukeTseng,本系列文章主要整理自學資料結構的一些知識,如果你喜歡我的文章,麻煩您不吝嗇的在文章底下按下一顆愛心,或是追蹤我唷~ 簡介(Introduction) Image Source:https://zh.wikipedia.org/zh-tw/%E6%A0%91_(%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84) 樹(Tree)資料結構是一種非線性資料結構,用來模擬具有階層性(Hierarchical)關係的資料。 一棵樹的基本構成由以下兩個要素組成: 節點(Node):樹的基本組成單位,每個節點會包含資料(或鍵值),以及指向其子節點的指標。 邊(Edge / Link):連接兩節點的線條,代表節點之間的關係,一棵有 $N$ 個節點的樹,必定會有 $N-1$ 條邊。 節點關係的術語 根節點(Root):樹的最頂層節點,整棵樹只有一個根節點,且是唯一沒有父節點的節點。 如上圖中的節點 A 即根節點。 父節點(Parent):若一個節點向下連接到其他節點,該節點就是那些節點的...
【計算機網路筆記】3.4 Principles of Reliable Data Transfer
【計算機網路筆記】3.4 Principles of Reliable Data TransferHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 Principles of Reliable Data Transfer(可靠資料傳輸的原理)該節定義了一個通用的可靠資料傳輸協定(rdt, reliable data transfer protocol)的「服務模型」與「實作介面」。 簡單來說,就是如何在底層網路可能會丟包、損壞資料的情況下,為上層應用程式提供一個資料保證不丟失、不損壞、按順序到達的傳輸管道。 為何需要可靠資料傳輸協定原因是我們所理想中的情形是:希望應用程式有一個可靠的通道,像在兩點之間接了一條完美的光纖,資料送進去,另一頭就完美地出來。 但現實上,底層...
【計算機網路筆記】3.3 Connectionless Transport: UDP
【計算機網路筆記】3.3 Connectionless Transport: UDPHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 回顧 UDPUDP(User Datagram Protocol,使用者資料包協定)只做了傳輸層最基本該做的事:把資料從一台電腦的某個程式,送到另一台電腦的某個程式,其他的它一概不管。 雖然 TCP 提供了可靠、有序的傳輸,但這些功能是有代價的(延遲、複雜度、連線建立時間)。 有些應用程式(如 DNS 查詢、即時語音、串流視訊)更在乎「速度」和「即時性」,對於偶爾掉幾個封包是可以容忍的,此時 TCP 的層層機制反而成了累贅,輕量級的 UDP 就派上用場了。 UDP 應用:即時影音串流、網路電話(VoIP,Voice over Inter...
【計算機網路筆記】3.2 Multiplexing and Demultiplexing
【計算機網路筆記】3.2 Multiplexing and DemultiplexingHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 簡介多工與解多工技術是一種將「主機對主機(Host-to-Host)」的傳輸服務,延伸轉化為「行程對行程(Process-to-Process)」傳輸服務的機制。 為什麼需要多工與解多工?假設有位使用者的電腦同時開著瀏覽器下載網頁、開著 FTP 傳檔案、還掛著兩個 Telnet 連線。 網路層(IP)只負責把資料包(Datagram)送到電腦(Host)門口。 在當電腦收到這個資料包時,它該如何知道這是要給瀏覽器的,還是給 FTP 的? 此時就是傳輸層的工作了,傳輸層利用多工(Multiplexing)與解多工(Demultiple...
【計算機網路筆記】3.1 Introduction and Transport-Layer Services
【計算機網路筆記】3.1 Introduction and Transport-Layer ServicesHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 傳輸層簡介傳輸層(Transport Layer)位於應用層(Application Layer)之下,網路層(Network Layer)之上。 傳輸層的核心功能是為執行在不同主機(Host)上的應用程式行程(Application Processes)之間提供邏輯通訊(Logical Communication)。 所謂邏輯通訊:從應用程式的角度看,好像兩台主機是直接連在一起的,儘管中間隔著無數的路由器和連結。 3.1.1 Relationship Between Transport and Network ...
【計算機網路筆記】2.7 Socket Programming: Creating Network Applications
【計算機網路筆記】2.7 Socket Programming: Creating Network ApplicationsHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 複習:什麼是 Socket? 簡單來說,Socket(插座)就是應用程式(Application)與網路(Network)之間的介面(Interface)。 Socket 的存在是為了把「網路層只做到主機對主機」提升成「傳輸層要做到行程(process)對行程」的溝通,並讓同一台主機上的許多應用程式能同時共用 TCP/UDP 而不互相搞混。 做比喻的話,行程(process)就像是房子,而 Socket 如同房子中的門。 當使用者想發訊息給別人,使用者會把訊息推出「門」(Socket)外,一旦出...
【計算機網路筆記】2.6 Video Streaming and Content Distribution Networks
【計算機網路筆記】2.6 Video Streaming and Content Distribution NetworksHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 2.6.1 Internet Video(網際網路視訊)在此探討的為預錄視訊串流(Streaming Stored Video)。 其運作模式是將預先錄製好的媒體(如電影、電視節目、UGC 影片)放置在伺服器上,使用者根據需求(On-demand)發送請求來觀看。 視訊本質上是連續的影像,資料量極其龐大,它是網際網路上對頻寬需求最高、對效能最敏感的應用類型之一。 其中所面臨的挑戰:如何在頻寬有限且會波動的網路環境中,傳送高位元率(High Bit Rate)的資料,並保持播放的流暢度。 術語解析 ...
【計算機網路筆記】2.5 Peer-to-Peer File Distribution
【計算機網路筆記】2.5 Peer-to-Peer File DistributionHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 P2P 架構與自我擴充性(Scalability)複習:什麼是 P2P? 在傳統的主從式架構(Client-Server Architecture)中,伺服器必須承擔所有的上傳工作。 如果要發送一個檔案給 $N$ 個使用者,伺服器就必須把這個檔案傳送 $N$ 次,會導致伺服器的頻寬成為巨大的瓶頸。 在 P2P 架構(Peer-to-Peer Architecture)中,每一台參與的電腦被稱為 Peer(對等點)。 Peer 不僅僅是下載檔案,還會將已下載的檔案片段重新上傳給其他的 Peer。 為什麼 P2P 很重要? 這個架構最關鍵...
【計算機網路筆記】2.4 DNS—The Internet’s Directory Service
【計算機網路筆記】2.4 DNS—The Internet’s Directory ServiceHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 2.4.1 Services Provided by DNS(由 DNS 提供的服務)什麼是 DNS?DNS(Domain Name System,網域名稱系統)就像是網際網路的「電話簿」,負責將人類好記的網址翻譯成電腦能理解的 IP 位址。 當在瀏覽器輸入 google.com 這種人類好記的網址時,電腦其實看不懂。 電腦需要透過 DNS 把網址翻譯成一串數字構成的 IP 位址(例如 142.250.190.46),才能正確連接到該網站的伺服器。 DNS 也是一個建立在應用層上的協定,它主要由兩部分組成: 分散式資料...
【計算機網路筆記】2.3 Electronic Mail in the Internet
【計算機網路筆記】2.3 Electronic Mail in the InternetHello Guys, I’m LukeTseng. 歡迎你也感謝你點入本篇文章,本系列主要讀本為《Computer Networking: A Top-Down Approach, 8th Edition》,就是計算機網路的聖經,會製作該系列也主要因為修課上會用到。若你喜歡本系列或本文,不妨動動你的手指,為這篇文章按下一顆愛心吧,或是追蹤我的個人公開頁也 Ok。 電子郵件系統的核心在於提供一種非同步(Asynchronous)的通訊方式。 什麼意思?就像傳統的郵政服務,寄信時,收件人不需要坐在家裡等,寄件人寫好信丟進郵筒,系統會負責傳遞到收件人的郵箱,對方有空時再開箱讀取。 電子郵件的出現打破了時間的限制,不需要通訊雙方同時在線(Always-on)也能交換資訊,且成本極低、速度快。 Image Source:Computer Networking: A Top-Down Approach (8th ed., p. 147, Figure 2.14) 上圖中呈現一份網際網路郵件系統的高層...



