__
花一堆時間解自己製造的白痴 bug
總之可以休息了
https://images.plurk.com/4SjBz0r3VembmFQ63wxYTC.png
__
還沒上船想加入的人
距離報名截止+資格賽結束
還有三個多小時 XDDD
Code Jam - Google’s Coding Competitions
__
A. Reversort
給一個排序演算法,計算執行的成本。

就無腦照著題目敘述實作就好(?)
算是送分題
__
B. Moons and Umbrellas
由 C, J, ? 三種符號組成的一串,
每出現一次 CJ 要付專利費 X,每出現一次 JC 要付 Y。
問 ? 要怎麼填才能使總花費最小?
__
Test Set 1 的長度最多只有 10
2^10 = 1024 種組合都試過一遍也行

Test Set 2 的長度高達 1000
2^1000 試到宇宙終結也得不到答案
經過一些觀察會發現連續的 ? 要嘛都填固定的 C 不然就填 J
後來會發現 ? 都是障眼法
C??JC???CJ?? 的成本竟然跟 CJCCJ 一樣
所以結論就是直接掃過一次就好
O(2^N) 變成 O(N) 可喜可賀
__
額外加分題 Test Set 3
如果 X, Y 可以是負的,也就是不是付錢,而是賺錢
看起來只能 DP 了 (?)
__
C. Reversort Engineering
題目 A. 的延伸題
這次變成問有沒有特定的輸入
可以符合指定輸入長度跟成本

Test Set 1
長度上限是 7
7! = 5040 種組合
都試過一次總行了吧

Test Set 2
長度上限是 100
__
D. Median Sort
每次都會出現的「互動題」
N 個大小相異的東西要排序,
但每次只能從裡面選出三個,問「這三個哪一個大小是在這三個中間的」
試著藉由有限次數的詢問,來決定這 N 個東西的大小順序
__
E. Cheating Detection
100 個學生回答 10000 個問題
已知這 100 名學生的能力是均勻分布, 10000 個問題的難度也是均勻分布
但其中有一名學生會作弊
試著從作答情況來找出誰是作弊的人
__
我拿到 Test Set 1 分數的方法還蠻無腦的:
得分最高的人就是作弊

要拿到 Test Set 2 分數,還是要做一些統計吧
載入新的回覆