看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) GCC 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) none 問題(Question): 在32行的地方stk.top()在j=1時會當掉 餵入的資料(Input): 1 AOA 預期的正確結果(Expected Output): 5 錯誤結果(Wrong Output): 這個程式即將關閉謹此致歉 程式碼(Code):(請善用置底文網頁, 記得排版) http://codepad.org/Z41FCcFB 補充說明(Supplement): 題目: 第一個輸入代表接下來會出現幾個字串 接著出現的字串要算出他有幾種可能的排列組合會出現回文的現象 並且不同種的排列方式即使字串相同也要算不同組合 ex:AAA AA_、_AA算不同的組合 所以輸出會是7 編譯可以過但是會當掉 用逐步執行發現stk.top()在跑第二次時就當掉了QQ 順帶一題字串的組合是參考firejox大大那優雅的code..... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.224.196
angleevil:雖然我看不懂你的code,但是stk.size()為1,沒東西還要pop 08/30 16:01
angleevil:當然永遠都是記憶體區段錯誤.還有firejox躺著也中槍 08/30 16:01
j129008:原來如此 08/30 16:11
angleevil:我比較想問1<<sln的由來?後來發現他是2的倍數呢. 08/30 16:14
j129008:如果字串長4的話會有2^4-1種字串組合 08/30 16:15
angleevil:if (i&(1<<j))<--問題出在這邊,只是我也不知道怎麼改 08/30 16:33
j129008:這邊出了什麼問題? 08/30 16:48
j129008:阿 原來是這樣我懂了 08/30 16:49
angleevil:= =?懂了,就把改好的code po上來吧,我只是找出問題,卻不 08/30 16:56
angleevil:知道你這樣用,有辦法達到排列的效果嘛? 08/30 16:56
firejox:AAA 是7? 08/30 19:17
j129008:yes 08/30 19:21
firejox:why? 08/30 19:22
firejox:AOA 不是4呀.... 08/30 19:28
j129008:A,O,A,AA,AOA 不同組合方式算不同種 08/30 19:42
j129008:第一個A跟第三個A不一樣 看題目給的輸出就知道 08/30 19:44
firejox:這樣是5種 = = 08/30 19:54
j129008:是阿 08/30 19:55
firejox:你的內文是4 = = 08/30 19:56
j129008:原來是我打錯 抱歉 08/30 19:56
※ 編輯: j129008 來自: 58.114.224.196 (08/30 19:57)