1 / 3

11012: Comsic Cabbages

11012: Comsic Cabbages. ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 1 1012: The 3n+1 Problem 解題者: 王嘉偉 解題日期: 200 7 年 4 月 10 日 題意: 給定一 Case 數量 N (0<N<21) ,每一個 Case 包含 n 個三維座標 (2<=n<=10^5) ,座標點的值介於 -10^8~10^8 且為整數,求各個 Case 所有點中任兩點最大的距離。 距離的算法: a(1,2,3) 與 b(2,1,4) 的距離為

Download Presentation

11012: Comsic Cabbages

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 11012: Comsic Cabbages • ★★★★☆ • 題組:Problem Set Archive with Online Judge • 題號:11012: The 3n+1 Problem • 解題者:王嘉偉 • 解題日期:2007年4月10日 • 題意: 給定一Case數量N (0<N<21),每一個Case包含n個三維座標(2<=n<=10^5),座標點的值介於 -10^8~10^8且為整數,求各個Case所有點中任兩點最大的距離。 距離的算法:a(1,2,3) 與 b(2,1,4) 的距離為 |2-1|+|1-2|+|4-3|=3

  2. 題意範例:1 4 0 1 2 3 4 5 6 7 8 9 10 11 Case #1: 27 • 解法:數學分析 循序搜尋 • 解法範例: 由題意可推得所求為|Xi-Xj|+|Yi-Yj|+|Zi-Zj| 的最大值,去掉三個絕對直需要考量的情形共有八種 : +++ , ++- , +-+ , -++ etc… , 拆去絕對直整理之後便可得所需要的座標性質。 Ex : 三個絕對值為 ++- 之情形 , 拆去絕對值符號後可整理成 (Xi+Yi-Zi) + (Zj-Xj-Yj) 要求此式的最大值,只需去搜尋座標值 X+Y-Z最大之點及Z-X-Y最大之點算出其距離便是此情形下最佳解。 求出各情形的最佳解後,再取出數值最大(即距離最大)之解。

  3. 討論: 雖然絕對值拆除可能產生八種情形,但有些情況是重複的不需再次計算。 Ex: ++- 與 --+ 拆解後為 (Xi+Yi-Zi) + (Zj-Yj-Xj) 與 (Xj+Yj-Zj) + (Zi-Yi-Xi) i,j僅是符號代表,實為兩種同樣的情形,故應掃描的情形僅為 4 種。 輸入座標需要一個n次迴圈,4個情形各需掃描n個座標點,故時間複雜度為 O(n)。

More Related