[問題] ACM 12455 WA

看板C_and_CPP作者 (抓抓)時間11年前 (2013/03/03 15:29), 編輯推噓2(2010)
留言12則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) ANSI C 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): ACM Q12455 中譯題目 http://luckycat.kshs.kh.edu.tw/homework/q12455.htm 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) http://codepad.org/WSY36F9P 補充說明(Supplement): 在高中生程式解題系統是AC 但在UVa網站就WA 不曉得是少考慮了什麼測資... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.56.10

03/03 16:40, , 1F
你第19行的迴圈寫反了,你這樣會讓一個物品被重複使用
03/03 16:40, 1F

03/03 16:41, , 2F
應該改成for(k = 1001; k >=0; k--)這樣才對
03/03 16:41, 2F

03/04 02:55, , 3F
感謝f大,改完後就AC了! 但是我仍然不是很清楚為什麼我原來
03/04 02:55, 3F

03/04 02:55, , 4F
那樣會重複計算到同一個物品... 可以請f大給我一組會重複算的
03/04 02:55, 4F

03/04 02:56, , 5F
測資嗎?
03/04 02:56, 5F

03/04 04:40, , 6F
並非重複計算,而是少計算。
03/04 04:40, 6F

03/04 04:41, , 7F
http://codepad.org/xCxQlezI 測資3,2,2 期望7
03/04 04:41, 7F

03/04 04:42, , 8F
因為在5的時候被蓋掉了,不會加最後的2
03/04 04:42, 8F

03/04 05:00, , 9F
1000->0 的寫法連 c 都可以不用,只要 arr[0] 先歸零。
03/04 05:00, 9F

03/04 05:02, , 10F
原本 1->1000 的寫法只要多判斷 arr[k+p] != 9999 也會對
03/04 05:02, 10F

03/04 05:07, , 11F
筆誤應該是判斷 arr[k+p] == 9999 才做 arr[k+p] = c
03/04 05:07, 11F

03/11 01:27, , 12F
謝謝各位!!
03/11 01:27, 12F
文章代碼(AID): #1HCll3Om (C_and_CPP)