作者don750421 (1+1≠2)
看板C_Sharp
標題[問題] 如何快速刪除多餘符號?
時間Sun Apr 26 00:47:13 2015
請問一下,假設有個預設10*5的文字區塊,如下圖左
如果在中間使用*畫出一個三角形,如下圖中
最後,希望修掉旁邊多餘的.(如下圖右),有沒有甚麼快速的方式??
補充說明:
一定是使用.做為底層,所以一開始會有10*5個.的矩形文字
(簡單說就是一個TXT文字檔內容會長這樣)
之後,會根據使用者的設定在.上面以*號畫出形狀
有可能是 三角形、圓形...等
最後,將上下左右行沒有出現 * 的那行刪掉...
↑想問問有沒有更快的方式...?
.......... ..........
.......... ....*..... ...*...
.......... => ...***.... => ..***..
.......... ..*****... .*****.
.......... .*******.. *******
目前想到的邏輯時,
使用兩個迴圈,一個跑row,一個跑Col
記住都是.的行數,
最後再跑一次兩個迴圈將多餘的.刪除
有人有更好的做法嗎??
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.142.130.225
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1429980436.A.6C1.html
→ GoalBased: 把問題描述得清楚一點可以嗎.. 04/26 01:16
→ GoalBased: 或者直接把全部的點換成空白可以嗎? 04/26 01:16
※ 編輯: don750421 (36.238.175.71), 04/26/2015 15:33:44
→ don750421: 回頭上Goal前輩,已經補充問題描述,感謝 04/26 15:34
→ GoalBased: 那就把全部的點換成空白 可以嗎 04/26 15:46
→ don750421: 回Goal大,不行@@還是要保留點... 04/26 17:02
→ GoalBased: 抱歉沒看清楚 04/26 17:44
→ GoalBased: 為什麼不在第一次迴圈的時候就把.刪掉? 04/26 18:50
→ don750421: 應該是說,有時候收到資料時已經中間那張圖了... 04/26 23:42
→ don750421: 此時要做的只是要刪成右邊那張... 04/26 23:42
推 Litfal: 用LINQ可以很輕鬆,但建議原PO練習一下土法煉鋼... 04/28 17:02