[問題] 有好心人 能幫幫我嗎?

看板C_and_CPP作者 (crab)時間15年前 (2010/07/01 09:56), 編輯推噓0(0025)
留言25則, 4人參與, 最新討論串1/1
我用C解這題http://www.zerojudge.tw/ShowProblem?problemid=d244 自己在DEV跑OK 程式=>http://codepad.org/2ZxrgtEn (test.txt 可用題目給的範例) 問題如下 1.因為要丟到judge跑 所以我想把fgets(程式第16行)改gets 但gets要鍵盤輸入 judge上 不是鍵盤輸入 我該怎麼改? (這是一次讀一行的方法) 2.因為上面行不通 所以我想到可以用scan("%d")去讀測資 但scan讀到空白就停 當測資 兩行以上 我會分不清何時換行 且%d也不能讀"\n" 有辦法讓scan讀一行嗎? 還是真的只能用scan("%c") 一個一個去讀? 這樣10以上的數字難處理.. 拜託指點一下 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.121.238.250

07/01 10:01, , 1F
你的文章title-_-|| 還有上面不是已經問過一篇了-_-||
07/01 10:01, 1F

07/01 10:02, , 2F
就把你的程式用1.的方式寫, 然後等編譯出執行檔的時候
07/01 10:02, 2F

07/01 10:03, , 3F
在console下, 用指令 xxx.exe < test.txt 來跑看看吧.
07/01 10:03, 3F

07/01 10:13, , 4F

07/01 10:14, , 5F
另外, ZJ網站上明明就有IO的示範教學~_~
07/01 10:14, 5F

07/01 10:29, , 6F
我貼在上面的程式在console能跑 丟上去跑不出來= =
07/01 10:29, 6F

07/01 10:29, , 7F
能幫一下嗎@@
07/01 10:29, 7F

07/01 15:20, , 8F
每一行用 fgets 去讀, 讀進來的字串再用 strtok 把每
07/01 15:20, 8F

07/01 15:21, , 9F
個數字分開, 存成數字就用 sscanf
07/01 15:21, 9F

07/01 15:38, , 10F
以上的都還算ok, 但是你存字串的作法根本大錯特錯
07/01 15:38, 10F

07/01 15:41, , 11F
n 沒給空間是要怎麼存字元? 而且測資如果有大於99的數
07/01 15:41, 11F

07/01 15:41, , 12F
就炸了
07/01 15:41, 12F

07/01 15:53, , 13F
照你的意思改了 http://codepad.org/M1LZ1jFC
07/01 15:53, 13F

07/01 15:53, , 14F
還是過不了 唉
07/01 15:53, 14F

07/01 15:55, , 15F
delim 有把 '\n' 包含進來嗎 ? 你檢查的時候沒有把表
07/01 15:55, 15F

07/01 15:56, , 16F
全掃過一遍
07/01 15:56, 16F

07/01 15:58, , 17F
不要把重點放在 : 過/不過, 就你的程式來看沒辦法吃很
07/01 15:58, 17F

07/01 15:59, , 18F
大的數字, 而且時間複雜度跟輸入無關, 而是陣列設多少
07/01 15:59, 18F

07/01 15:59, , 19F
複雜度就是多少, 你在寫程式的時候應該把重點放在這,
07/01 15:59, 19F

07/01 16:00, , 20F
我在try看看 謝謝你
07/01 16:00, 20F

07/01 16:00, , 21F
才能應付各式各樣的測資, 就算用很糟的方式過了, 一
07/01 16:00, 21F

07/01 16:01, , 22F
樣是失敗品
07/01 16:01, 22F

07/01 16:02, , 23F
因為程式還沒有很強 所以複雜度還沒辦法一並考慮進來
07/01 16:02, 23F

07/01 17:23, , 24F
剛測了,該行最後要多判斷EOF。出題者似乎沒有換行。
07/01 17:23, 24F

07/01 17:25, , 25F
而且最後一個數字後面似乎有空白。
07/01 17:25, 25F
文章代碼(AID): #1CA_N9z5 (C_and_CPP)