看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《ross800127 (ROSS-MAX)》之銘言: : 開發平台(Platform): (Ex: VC++, GCC, Linux, ...) : Dev-C++ : 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) : 問題(Question): : 如題,測試資料有過,但是上傳之後顯示為 Wrong Answer : 自己舉了幾個例子算算看也是對的,希望大家能幫忙看一下 : 餵入的資料(Input): : 預期的正確結果(Expected Output): : 錯誤結果(Wrong Output): : 程式碼(Code):(請善用置底文網頁, 記得排版) : http://paste.plurk.com/show/355773/ 我不記得這題真正的 trick 是什麼, 只是單看題目跟 code 之後的一些想法。 導致 wa 的問題: 1. 答案有可能是負數 2. 你的兩個判斷 sum<0 的部份,就算當下結果小於 0, 整個矩型還是有可能出現最大值 其他可以加強的: 1. 你的寫法是 O(n^4),雖然不見得會 TLE,但這題可以更低。 2. 第二組 for 迴圈完全不知在幹嘛,那 temp 根本沒用到。 : 補充說明(Supplement): : 題目可以參考這裡 : http://zerojudge.tw/ShowProblem?problemid=d206 : 我只有測試第一個4*4的範例 : 第二個有10*10的就沒測試過了,因為太多筆資料有點難輸入> < 怎麼會自己輸入測資,用想的就覺得很累 Orz 一般大家都是另外開個檔案,然後在 code 裡用讀檔的方式, 要上傳的時候把開檔那行註解掉就行了。 (你就算不這樣做至少也要用複製貼上吧 XD) -- T$,修好它吧。 ⊙─ ─⊙▂⊙ 碰到問題,用SoftICE就對了! █◤ Lee T$ Chen MYTHBUGTERS by dajidali -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.78.231
ross800127:第二個FOR是在判斷若是前面算出來的MAX<0 的話 01/21 22:52
ross800127:那就找出資料裡面最小的數據 01/21 22:53
ross800127:用讀檔測試第二個測試資料答案是錯的 01/21 22:54
ross800127:希望我有辦法找到 BUG 01/21 22:54
ross800127:那個10*10 的測試資料幾乎不可能慢慢檢查每一個步驟 01/21 23:05
ross800127:但是自己舉的例子都是對的,不知道該從何著手 01/21 23:06
ross800127:我有測試過全部都是負數的資料下,後面的FOR就會挑出 01/21 23:07
ross800127:最小的 01/21 23:07
suhorng:想想看原PO說的第二點 01/21 23:32
suhorng:為什麼 <0 就 continue 掉是對的呢 ? 若你覺得他是對的,不 01/21 23:33
suhorng:妨試著提出說明(或證明更好) 01/21 23:34
smartclever:記得沒錯最強n^2,普通n^3 01/23 10:42
tkcn:我知道最好的是 n^3,如果有人知道 n^2 我會很有興趣了解 :p 01/23 21:15