1 11023: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.

Slides:



Advertisements
Similar presentations
Divide-and-Conquer. 什麼是 divide-and-conquer ? Divide 就是把問題分割 Conquer 則是把答案結合起來.
Advertisements

: Arrange the Numbers ★★★☆☆ 題組: Contest Archive with Online Judge 題號: 11481: Arrange the Numbers 解題者:李重儀 解題日期: 2008 年 9 月 13 日 題意: 將數列 {1,2,3, …,N}
: A-Sequence 星級 : ★★☆☆☆ 題組: Online-judge.uva.es PROBLEM SET Volume CIX 題號: Problem D : A-Sequence 解題者:薛祖淵 解題日期: 2006 年 2 月 21 日 題意:一開始先輸入一個.
:Word Morphing ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10508:word morphing 解題者:楊家豪 解題日期: 2006 年 5 月 21 日 題意: 第一行給你兩個正整數, 第一個代表下面會出現幾個字串,
1 Q10276: Hanoi Tower Troubles Again! 星級 : ★★★ 題組: Online-judge.uva.es PROBLEM SET Volume CII 題號: Q10276: Hanoi Tower Troubles Again! 解題者:薛祖淵 解題日期: 2006.
指導教授:陳淑媛 學生:李宗叡 李卿輔.  利用下列三種方法 (Edge Detection 、 Local Binary Pattern 、 Structured Local Edge Pattern) 來判斷是否為場景變換,以方便使用者來 找出所要的片段。
: Boxes ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11003: Boxes 解題者:蔡欣燁 解題日期: 2007 年 3 月 19 日.
: Factstone Benchmark ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: : Factstone Benchmark 解題者:鐘緯駿 解題日期: 2006 年 06 月 06 日 題意: 假設 1960.
:New Land ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11871: New Land 解題者:施博修 解題日期: 2011 年 6 月 8 日 題意:國王有一個懶兒子,為了勞動兒子,他想了一個 辦法,令他在某天早上開始走路,直到太陽下山前,靠.
: OPENING DOORS ? 題組: Problem Set Archive with Online Judge 題號: 10606: OPENING DOORS 解題者:侯沛彣 解題日期: 2006 年 6 月 11 日 題意: - 某間學校有 N 個學生,每個學生都有自己的衣物櫃.
: ShellSort ★★☆☆☆ 題組: Problem D 題號: 10152: ShellSort 解題者:林一帆 解題日期: 2006 年 4 月 10 日 題意:烏龜王國的烏龜總是一隻一隻疊在一起。唯一改變烏龜位置 的方法為:一隻烏龜爬出他原來的位置,然後往上爬到最上方。給 你一堆烏龜原來排列的順序,以及我們想要的烏龜的排列順序,你.
: Problem E - Beverages ★★★☆☆ 題組: Contest Archive with Online Judge 題號: 11060: Problem E - Beverages 解題者:李重儀 解題日期: 2008 年 3 月 4 日 題意: Dilbert 大學剛畢業,他決定要和朋友出去。他有奇怪的嗜好,
STAT0_sampling Random Sampling  母體: Finite population & Infinity population  由一大小為 N 的有限母體中抽出一樣本數為 n 的樣 本,若每一樣本被抽出的機率是一樣的,這樣本稱 為隨機樣本 (random sample)
: Matrix Decompressing ★★★★☆ 題組: Contest Volumes with Online Judge 題號: 11082: Matrix Decompressing 解題者:蔡權昱、劉洙愷 解題日期: 2008 年 4 月 18 日 題意:假設有一矩陣 R*C,
JAVA 程式設計與資料結構 第十四章 Linked List. Introduction Linked List 的結構就是將物件排成一列, 有點像是 Array ,但是我們卻無法直接經 由 index 得到其中的物件 在 Linked List 中,每一個點我們稱之為 node ,第一個 node.
期中考參考解答 Date: 2005/12/14 Multimedia Information Systems.
MATLAB 程式設計 第 11 章 多維陣列 多維陣列的定義 在 MATLAB 的資料型態中,向量可視為 一維陣列,矩陣可視二維陣列,對於維 度 (Dimensions) 超過 1 的陣列則均可視 為「多維陣列」 (Multidimesional Arrays , 簡稱 N-D Arrays)
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
: The Playboy Chimp ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10611: The Playboy Chimp 解題者:蔡昇宇 解題日期: 2010 年 2 月 28 日 題意:給一已排序的數列 S( 升冪.
Network Connections ★★★☆☆ 題組: Contest Archive with Online Judge 題號: Network Connections 解題者:蔡宗翰 解題日期: 2008 年 10 月 20 日 題意:給你電腦之間互相連線的狀況後,題.
Chapter 13 塑模靜態觀點:物件圖 Static View : Object Diagram.
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
: Abundance and Perfect Numbers ★★★★☆ 題組: Contest Volumes with Online Judge 題號: 10914: Abundance and Perfect Numbers 解題者:劉洙愷 解題日期: 2008 年 5 月 2.
: The largest Clique ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11324: The largest Clique 解題者:李重儀 解題日期: 2008 年 11 月 24 日 題意: 簡單來說,給你一個 directed.
: Tight words ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: : Tight Words 解題者:鐘緯駿、林一帆 解題日期: 2006 年 03 月 14 日 題意: 給定數字 k 與 n (0 ≦ k.
: Point of View in Flatland ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 11037: Point of View in Flatland 解題者:黃士庭 解題日期: 2007 年 5 月 15 日 題意:在座標平面上給三個圓,找一個點使從這.
: Happy Number ★ ? 題組: Problem Set Archive with Online Judge 題號: 10591: Happy Number 解題者:陳瀅文 解題日期: 2006 年 6 月 6 日 題意:判斷一個正整數 N 是否為 Happy Number.
: Fast and Easy Data Compressor ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10043: Fast and Easy Data Compressor 解題者:葉貫中 解題日期: 2007 年 3.
: Little Red Riding Hood ★★★☆☆ 題組: Contest Volumes Archive with Online Judge 題號: 11067: Little Red Riding Hood 解題者:陳明凱 解題日期: 2008 年 3 月 14 日 題意:
Chapter 2 Getting Started Insertion Sort: 能有效率地排序小數字的演算法 範例 :
: Problem A : MiniMice ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11411: Problem A : MiniMice 解題者:李重儀 解題日期: 2008 年 9 月 3 日 題意:簡單的說,題目中每一隻老鼠有一個編號.
: Ahoy, Pirates! ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11402: Ahoy, Pirates! 解題者:李重儀 解題日期: 2008 年 8 月 26 日 題意:有一個海盜島有 N 個海盜,他們的編號 (id)
: Count DePrimes ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11408: Count DePrimes 解題者:李育賢 解題日期: 2008 年 9 月 2 日 題意: 題目會給你二個數字 a,b( 2 ≦ a ≦ 5,000,000,a.
:Nuts for nuts..Nuts for nuts.. ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 10944:Nuts for nuts.. 解題者:楊家豪 解題日期: 2006 年 2 月 題意: 給定兩個正整數 x,y.
資料結構實習-一 參數傳遞.
: Problem G e-Coins ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10306: Problem G e-Coins 解題者:陳瀅文 解題日期: 2006 年 5 月 2 日 題意:給定一個正整數 S (0
: A-Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10930: A-Sequence 解題者:陳盈村 解題日期: 2008 年 5 月 30 日 題意: A-Sequence 需符合以下的條件, 1 ≤ a.
: Beautiful Numbers ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11472: Beautiful Numbers 解題者:邱經達 解題日期: 2011 年 5 月 5 日 題意: 若一個 N 進位的數用到該.
1 100: The 3n+1 Problem ★★★☆☆ 題組: VOLUME CII 題號: 10721: Problem C-Chopsticks 陳冠男 解題者:陳冠男、侯沛彣 解題日期: 2006 年 4 月 23 日 給定一個正整數 n (n>1) ,當 n 為奇數時令 n  3n+1.
: THE SAMS' CONTEST ☆☆★★★ 題組: Problem Set Archive with Online Judge 題號: 10520: THE SAMS' CONTEST 解題者:陳相廷,林祺光 解題日期: 2006 年 5 月 22 日 題意:依以下式子,給定 n.
: Lucky Number ★★★★☆ 題組: Proble Set Archive with Online Judge 題號: 10909: Lucky Number 解題者:李育賢 解題日期: 2008 年 4 月 25 日 題意:給一個奇數數列 1,3,5,7,9,11,13,15…
Section 4.2 Probability Models 機率模式. 由實驗看機率 實驗前先列出所有可能的實驗結果。 – 擲銅板:正面或反面。 – 擲骰子: 1~6 點。 – 擲骰子兩顆: (1,1),(1,2),(1,3),… 等 36 種。 決定每一個可能的實驗結果發生機率。 – 實驗後所有的實驗結果整理得到。
函式 Function Part.2 東海大學物理系‧資訊教育 施奇廷. 遞迴( Recursion ) 函式可以「呼叫自己」,這種動作稱為 「遞迴」 此程式的執行結果相當於陷入無窮迴圈, 無法停止(只能按 Ctrl-C ) 這給我們一個暗示:函式的遞迴呼叫可以 達到部分迴圈的效果.
: GCD - Extreme II ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11426: GCD - Extreme II 解題者:蔡宗翰 解題日期: 2008 年 9 月 19 日 題意: 最多 20,000 組測資,題目會給一個數字.
JAVA 程式設計與資料結構 第二十章 Searching. Sequential Searching Sequential Searching 是最簡單的一種搜尋法,此演 算法可應用在 Array 或是 Linked List 此等資料結構。 Sequential Searching 的 worst-case.
資料結構實習-二.
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
: Automatic correction of misspellings ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11048: Automatic correction of misspellings 解題者:陳宜佐 解題日期:
: Expect the Expected ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11427: Expect the Expected 解題者:李重儀 解題日期: 2008 年 9 月 21 日 題意:玩一種遊戲 (a game.
: Flip Sort ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10327: Flip Sort 解題者:歐子揚 解題日期: 2010 年 2 月 26 日 題意:在這個問題中使用一種排序方式 (Flip) ,意思就是 只能交換相鄰的.
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
Chapter 10 m-way 搜尋樹與B-Tree
: Function Overloading ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11032:Function Overloading 解題者:許智祺 解題日期: 2007 年 5 月 8 日 題意:判對輸入之數字是否為.
Extreme Discrete Summation ★★★★☆ 題組: Contest Archive with Online Judge 題號: Extreme Discrete Summation 解題者:蔡宗翰 解題日期: 2008 年 10 月 13 日.
: Expressions ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10157: Expressions 解題者:張庭愿 解題日期: 2009 年 8 月 16 日 題意:所有的括號必須成對,且必須先出現過左 括號後才能出現右括號,如果有.
: Help My Brother ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11033: Help My Brother 解題者: 呂明璁 解題日期: 2007 年 5 月 14 日.
: Sum-up the Primes ★★★★☆ 題組: Problem A 題號: 10419: Sum-up the Primes 解題者:林一帆 解題日期: 2006 年 5 月 15 日 題意: 評斷一個給予的數字是否是由給予個數 的質數所組成的.
: Ordering Tasks ☆☆☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10305: Ordering Tasks 解題者:陳相廷 解題日期: 2006 年 6 月 12 日 題意:給定兩兩工作的先後關係,求出整體合 法執行順序。
: Dream ★★★☆☆ 題組: Contest Archive with Online Judge 題號: 11414: Dream 解題者:李育賢 解題日期: 2008 年 9 月 2 日 題意: 題目會給你一個數字代表測資的數量 ( 最多 100 組 ) , 每組測資第一個數字是此圖形點的個數.
: Wine trading in Gergovia ★★☆☆☆ 題組: Contest Volumes with Online Judge 題號: 11054: Wine trading in Gergovia 解題者:劉洙愷 解題日期: 2008 年 2 月 29 日 題意:在 Gergovia.
:Commandos ★★★☆☆ 題組: Contest Archive with Online Judge 題號: 11463: Commandos 解題者:李重儀 解題日期: 2008 年 8 月 11 日 題意: 題目會給你一個敵營區內總共的建築物數,以及建築物 之間可以互通的路有哪些,並給你起點的建築物和終點.
: SAM I AM ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11419: SAM I AM 解題者:李重儀 解題日期: 2008 年 9 月 11 日 題意: 簡單的說,就是一個長方形的廟裡面有敵人,然 後可以橫的方向開砲或縱向開砲,每次開砲可以.
:Count the Trees ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10007:Count the Trees 解題者:楊家豪 解題日期: 2006 年 3 月 題意: 給 n 個點, 每一個點有自己的 Label,
: Finding Paths in Grid ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11486: Finding Paths in Grid 解題者:李重儀 解題日期: 2008 年 10 月 14 日 題意:給一個 7 個 column.
:Problem E.Stone Game ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10165: Problem E.Stone Game 解題者:李濟宇 解題日期: 2006 年 3 月 26 日 題意: Jack 與 Jim.
:Rings and Glue ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10301: Rings and Glue 解題者:施博修 解題日期: 2011 年 5 月 18 日 題意:小約翰有了個大麻煩,他不小心將 rings.
幼兒行為觀察與記錄 第八章 事件取樣法.
: How many 0's? ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11038: How many 0’s? 解題者:楊鵬宇 解題日期: 2007 年 5 月 15 日 題意:寫下題目給的 m 與 n(m
: Simple Minded Hashing ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10912: Simple Minded Hashing 解題者:陳俊達 解題日期: 2008 年 5 月 02 日 題意: 給兩個正整數,長度.
Presentation transcript:

: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義 Multisets 與 Sequences 。 1) Multiset 是一個由一系列自然數 ( 有可能會重複 ) 為元素 組成的集合。表示法是以非遞減順序列出所有元素,用逗 號隔開,兩邊用小括號括起來。 Multiset 裡的元素數量稱 為他的 size 。 Multiset 的 size 可以是 0 ,表示這個 Multiset 是空的。可能的 Multiset 有 : (), (1), (-18,-17,-16) 和 (1,3,3,3,4,5,5,6) 。

2 2) Sequence 是元素有特定順序的 Multiset 。表示法是以特 定順序列出所有元素,用逗號隔開,兩邊用大括號括起 來。跟 Multiset 一樣, Sequence 也可以是空的。可能的 Sequence 有 : {}, {1}, {1,2,3}, {2,3,1} 和 {25,-18,25,25,7} 。 3) 有些 Sequence 可以互相比較。如果兩個 Sequence 的 size 一樣而且所有的元素一樣,順序一樣,我們可以說他 們相等。如果兩個 Sequence 的 size 一樣而且組成元素一 樣,但是順序可能不一樣,我們可以說他們是相似的。 如果兩個 Sequence 的 size 一樣但可能包含了不同的元 素,我們就說他們是可比較的。我們也可以用不相等, 不相似和不可比較來表示相反的特性。 {1,2,2,3} 和 {1,2,2,3} 和是相等的,相似的而且可比較; {6,3,1,1} 和 {1,3,1,6} 不相等,但是相似而且可比較; {1,2,3} 和 {- 988,7,-10} 不相等,不相似但是可以比較。 Size 不同的兩 個 Sequence 不相等,不相似而且不能比較。

3 4) 可比較的兩個 Sequence 可以分大小。從左到右直到找 到一個兩個 Sequence 不同的元素,如果不同的那個元素 在一個 Sequence 比另外一個小,那個 Sequence 就比另一 個小。我們可以以此排序可以比較的數個 Sequence ,然後 決定一個特定 Sequence 在同一組的 rank 。最小 Sequence 的 rank 是 0 ,再來是 1 ,以此類推。下面一組的 Sequence :{7,-1,8},{1,1,1},{-9,0,-3},{1,1,0} 可以排序 :{-9,0,-3},{1,1,0},{1,1,1},{7,-1,8} 。 所以 {-9,0,-3} 的 rank 是 0 , {1,1,0} 的 rank 是 1 。 5) 五個指令: degrade 、 promote 、 rank 、 derive 、 find 。 degrade :把一個 sequence degrade 成一個有同樣元素的 multiset 。例如 :“degrade {6,3,-1,4,-1}” 得到 “(-1,-1,3,4,6)” 。

4 promote :把一個 multiset promote 成一個 sequence 。因為 一個 multiset 可以造出一系列相似的 sequence ,所以我們 也需要我們想要的 rank 。例如 : “promote (4,6,8) 3” 得到 “{6,8,4}” 。 rank :我們可以求出一個 sequence 在從同一個 multiset promote 出來的 sequences 中的 rank 。例如 :“rank {8,6,9,6}” 得到 “7” 。 derive :我們可以從一個 multiset derive 出一個特定 size 的 sequence ,那個 size 不超過 multiset 的 size 。因為一個 multiset 可以 derive 出很多種可比較的 sequence ,我們也 需要我們想要的 rank 。例如 :“derive (1,1,2,2,3) 3 15” 得到 “{3,1,2}” 。

5 find : find 一個 sequence 在從一個 multiset derive 出來的 sequences 中的 rank 。例如 :"find {5,8} (0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9)“ 得到 ”58“ 。注意指 令並沒有明確的給出 size ,因為 size 已經隱含在 sequence 參數中了。 格式: Input 包含了一系列以上定義的指令,每行一個,不包 含引號。 Multisets 和 sequences 最少有 0 個,最多有 20 個 元素。元素都是 32 位元有號整數,所有的指令都是有效 的。指令和參數之間會用一個空白隔開,但是 multisets 或 sequences 裡面和前後都不會有任何的空白。指令名稱都 是小寫字母。 Input 結尾是一行 “end” 。

6 題意範例: Input Output degrade {6,3,-1,4,-1} (-1,-1,3,4,6) promote (4,6,8) 3 {6,8,4} rank {8,6,9,6} 7 derive (1,1,2,2,3) 3 15 {3,1,2} find {5,8} (0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9) 58 end 解法: 1) DP 2) Math – 排列組合 rank 的順序恰為其元素由小到大的排列組合,我們可以 用數學計算出 rank 大小。

7 解法範例: degrade => 排序 (quick sort) rank {1,4,2,3} => rank= Σ( 次數 )*( 排列數 ) 0 1,2,3,4 1) 先與 rank 0 比較,找出第一個相異者。 1 1,2,4,3 此範例第一個相異者為 4 。由 4 的位置可 2 1,3,2,4 求出後二數的排列數,即 ( 3 – 1 )! = 2 。 3 1,3,4,2 2) 再搜尋出此數字 4 在剩下數字的排名 4 1,4,2,3 ,可得知在 4 之前有幾次組合,即 3 – 1 5 1,4,3,2 = 2 。 6 2,1,3,4 3) 將另尚未計算的數字另存陣列,利用 7 2,1,4,3 遞迴加上剩下未計算數字的 rank 。此範例 8 2,3,1,4 剩下的數字 {2,3} rank=0 9 2,3,4,1 所以 rank = 2*2 + 0 = ,4,1,3 11 2,4,3,1 … } 排列數 2 有 2組 {有 2組 {

8 重複數字之處理: rank {8,6,9,6} => rank= Σ( 次數 )*( 排列數 ) 0 6,6,8,9 1) 先與 rank 0 比較,找出第一個相異者。 1 6,6,9,8 此範例第一個相異者為 8 。由 8 的位置可 2 6,8,6,9 求出單位 rank 的厚度,即 ( 4 – 1 )! = 6 。但 3 6,8,9,6 需扣除重複數,還要除 2! ,即 6 / 2! = 3 。 4 6,9,6,8 2) 再搜尋出此數字 8 在剩下數字的排名 5 6,9,8,6 ,可得知在 8 之前有幾次組合,即 3 – 1 6 8,6,6,9 = 2 。 ( 兩個 6 都要算 ) 7 8,6,9,6 3) 將尚未計算的數字另存陣列,利用遞 8 8,9,6,6 迴加上剩下未計算數字的 rank 。此範例剩 9 9,6,6,8 下的數字 {6,9,6} 求出其 rank=1 。所以 10 9,6,8,6 rank = 2*3 + 1 = 7 。 11 9,8,6,6 … } 排列數 3 有 2組 {有 2組 { }rank=1

9 find {2,1,2} (1,1,2,2,3) => rank= Σ( 次數 )*( 排列數 ) 0 1,1,2 1) 解法就如同 rank 一樣,但必須先計算出 1 1,1,3 每個數字的重複出現次數,求出其排列數 2 1,2,1 。先與 rank 0 比較,找出第一個相異者。 3 1,2,2 此範例第一個相異者為 2 。由去除 2 剩下 4 1,2,3 的數字可求出單位 rank 的厚度 = 7 。 5 1,3,1 2) 由 size 3 計算出在 {2,1,2} 之前有幾次組 6 1,3,2 合,即 2 – 1 = 1 。 7 2,1,1 3) 將剩下尚未計算的數字另存陣列,利用 8 2,1,2 遞迴加上剩下未計算數字的 rank 。此範例 9 2,1,3 剩下的數字 {1,2} 求出其 rank=1 。所以 10 2,2,1 rank = = 8 。 11 2,2,3 12 2,3,1 13 2,3,2 14 3,1,1 …

10 promote 與 derive 即 rank 與 find 的反向思考。 由 rank= Σ( 次數 )*( 排列數 ) 。先求出組合次數,就可以得知 數字名次,再慢慢去反推即可。 討論: 1) 時間複雜度: quick sort => O (nlogn)