作者tkcn (小安)
站內C_and_CPP
標題Re: [問題] ACM 108 範例過了但是上傳後沒過
時間Fri Jan 21 22:43:22 2011
※ 引述《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