精華區beta C_Chat 關於我們 聯絡資訊
●42360 3412/04 aterui □ [閒聊] 程式設計師也想談戀愛 文章代碼(AID): #1KW5PLwF (C_Chat) [ptt.cc] 作者: aterui (阿照井) 看板: C_Chat 標題: [閒聊] 程式設計師也想談戀愛 時間: Thu Dec 4 20:40:45 2014 https://paiza.jp/poh/enkoi 就一個資訊人力仲介網站的宣傳漫畫 主角是一個新入社員 第一天上班在路上撞到咬吐司的美少女 結果居然就是他的同事 雖然看起來已經是上個世紀的老梗 但這個漫畫有一個與眾不同的地方 「要寫程式才能繼續往下看」 依程式的結果劇情還會不一樣 有興趣可以試試看 不會寫程式的可以參考下頁我的解答 (使用PHP語言) 我都是很單純的解法 第3題的部分這樣只會有60分,可能需要在演算法上做處理 希望有專業的人來解答 1.輸入第一行是參數量,第二行之後每行都是參數,求全參數總和 <?php $input_lines = fgets(STDIN); $total = 0; for ($i = 0; $i < $input_lines; $i++) { $total += fgets(STDIN); } echo $total; ?> 2.輸入第一行是參數量n, 第二行之後是 T_n S_n P_n T_n代表需要貨品n數量,S_n代表目前貨品n數量,P_n代表貨品n的價格 請輸出要補齊貨物的採購金額 <?php $input_lines = fgets(STDIN); $total = 0; for ($i = 0; $i < $input_lines; $i++) { $s = fgets(STDIN); $s = explode(" ", $s); if ($s[0] > $s[1]) $total += ($s[0] - $s[1]) * $s[2]; } echo $total; ?> 3.有一串長度n的數列,選擇其中連續t個數字,輸出把t加總後的最大數值 第一行輸入是 t n 第二行之後每行都是數列的參數m_n <?php $tmp = fgets(STDIN); $tmp = explode(" ", $tmp); $t = $tmp[0]; $n = $tmp[1]; $m = array(); $value = 0; for ($i = 0; $i < $n; $i++) { array_push($m, fgets(STDIN)); if ($i < $t) $value += $m[$i]; else { $new_value = 0; for ($j = 0; $j < $t; $j++) $new_value += $m[($i-$j)]; if ($new_value > $value) $value = $new_value; } } echo $value; ?> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.215.218 ※ 文章網址: http://www.ptt.cc/bbs/C_Chat/M.1417696853.A.E8F.html
WrongHole: 這麼有趣的小東西<3 12/04 20:45
gm79227922: 輪班星人輪班中 沒空解 12/04 20:48
fish770130: 家裡電腦沒灌VS 明天去公司玩看看 12/04 20:51
MikiSayaka: (把C練回來-ing... # 第一題已過, 但是紙上coding?!) 12/04 20:54
easoniverson: 我猜你第三題應該是包太多層 12/04 20:55
aterui: 這樣寫變O(n^2),應該有O(n)的寫法,腦袋不清楚想不出來orz 12/04 20:58
sdfsonic: 沒寫過PHP 12/04 20:58
aterui: 可以選其他語言,對應超多的,這個網頁本身就超強的 12/04 20:59
※ 編輯: aterui (220.135.215.218), 12/04/2014 21:08:59
fish770130: 第一題的分數在哪阿 我過了但是沒看到分數 12/04 21:05
rofellosx: 要登記名字和信箱才有分數 12/04 21:06
fish770130: 看到了 第一題100點 12/04 21:06
fish770130: 結果我都沒在看漫畫內容.... 12/04 21:07
wadasiwak: 都滿分了~ 第三題只要記錄長度即可 待會貼code! 12/04 21:14
MikiSayaka: 第三題其實題目有提示, 不需要弄到 O(n^2) 12/04 21:16
wadasiwak: http://codepad.org/unQwOqgz 12/04 21:21
aterui: 喔喔喔,感謝,可以去夏威夷了^^ 12/04 21:23
xxtuoo: 甚麼..難道現在都流行PHP/Python了嗎...C/C++...QQ 12/04 21:26
fish770130: 樓上別難過 我也是用C#寫的...... 12/04 21:26
sopare: 第三題 每滑動一次 就把總和加上新值並減去離開那格的值 12/04 21:27
sopare: 並跟目前所發現的最大總和比較 這樣是O(n) 12/04 21:28
wadasiwak: python很方便阿ww 念到資工所現在最常用的就是它了 12/04 21:30
ACMANIAC: 這年頭看個漫畫也要先練過 ACM 就是了... 12/04 21:30
MikiSayaka: 還好啦... 哪像某人一直都在寫R... C/C++都得回頭練 12/04 21:35
leungpeng: http://goo.gl/UOVHl8 相同做法的php... 12/04 22:12
hayamakurata: C++ +1 第三題迴圈有點煩...不過終於到夏威夷了 12/04 22:16
m80126colin: 樓上的大大 分成好幾個迴圈寫就還好嚕 12/04 22:36
wuliou: 這欺負嵌入式的啊 12/04 22:36
cooper6334: 只有我用JAVA嗎XD 12/04 22:43
suhorng: 推薦 Haskell 12/04 22:47
m80126colin: 喔喔喔喔喔 3 題答完後面還有兩題 ... 一題是 SQL 12/04 22:47
Helicoid: C/C++最快啊 雖然想挑戰能用幾種語言做到滿分 12/04 22:58
xatier: 樓上上 Haskell 大大 QQ 12/04 22:58
sarsman: 可以用python耶! 12/04 22:58
suhorng: 我同學用 Haskell 寫好像 RE 了QQ 不知是不是 stackoverf 12/04 22:58
suhorng: 他說有可能是MLE OAO 12/04 23:03
sabertomoaki: C++ +1 等會來試試PHP或JAVA XD 12/04 23:04
m80126colin: Haskell GHC 7.6.3 Time Limit=5 Memory=512 MB 12/04 23:05
kira925: 等毀來用Ruby...看看? 12/04 23:23
jimmyken793: Ruby解法 http://tinyurl.com/o2jo99f 12/04 23:56
DreamRecord: 被第二題婊了 結果用浮點數輸出會錯喔 要用整數才行 12/04 23:57
DreamRecord: 第三題也是卡在超過時間 看不懂日文題目錯了嗎QQ 12/04 23:58
jimmyken793: 3有大測資 一直硬爆O(m*n)會超時 12/04 23:59
DreamRecord: 還以為這種的不會要求程式執行時間 看推文猜知道QQ 12/04 23:59
loadball: JAVA 三題都完美過關啦 12/05 00:00
z101924512: 第三題有O(n)解,讀資料把陣列資料累加 12/05 00:09
z101924512: 走訪陣列檢查array[i]-array[i-t]的數值,取最大者就好 12/05 00:11
kevin4314: Haskell http://goo.gl/dC59k1 12/05 00:26
mmis1000: 遇到第三題第四個輸出是錯誤而不是超時的靈異現象... 12/05 01:09
sabertomoaki: 三題解完之後的題目看不懂 12/05 02:02
harryron9: 我用c++寫了第五題(坐椅子)100分 可是rank只有B... 12/05 03:50
harryron9: 搞錯了...那是指題目本身的難易度QQ 12/05 03:58
tony4794: 第三題讀資料的時候可以直接算,不用等全部讀完! 12/05 12:51
ckeisciltch: 好酷XD 待會來玩玩 12/05 13:59
smart0eddie: 請問排座位那題除了暴力解跟tree以外還有其他方式嗎 12/05 15:47
xxtomnyxx: 沒有組合語言可以選...... 12/06 00:30