[問題] 檢查數字範圍是否相互重疊
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
我把一份文件讀進來
格式大概長這樣子
Note 242655 246400 81
Note 242795 243180 71
Note 243180 246400 74
Note 246400 246785 78
Note 246400 248430 81
我要檢查每個Note的範圍
有沒有相互重疊
像以上有4個Note的範圍有相互重疊到
希望得到的正確結果:
只要偵測到有重疊, 直接移除該行
程式跑出來的錯誤結果:
N/A
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
C++/CLI
有問題的code: (請善用置底文標色功能)
補充說明:
我實在想好久想不到一個適當的演算法
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.196.13
→
08/21 16:02, , 1F
08/21 16:02, 1F
→
08/21 16:02, , 2F
08/21 16:02, 2F
→
08/21 16:08, , 3F
08/21 16:08, 3F
→
08/21 16:09, , 4F
08/21 16:09, 4F
→
08/21 16:10, , 5F
08/21 16:10, 5F
我原本的想法是看範圍有多大開多少的陣列
每讀取一個NOTE就把對應範圍的陣列值改成1
然後之後的NOTE進來, 如果要改的時候發現陣列值已經是1
那該行就要刪除
但是30幾萬實在很難開陣列 ...
※ 編輯: herman602 來自: 114.43.196.13 (08/21 16:15)
推
08/21 16:19, , 6F
08/21 16:19, 6F
→
08/21 16:33, , 7F
08/21 16:33, 7F
→
08/21 16:35, , 8F
08/21 16:35, 8F
→
08/21 16:41, , 9F
08/21 16:41, 9F
→
08/21 16:45, , 10F
08/21 16:45, 10F
→
08/21 16:46, , 11F
08/21 16:46, 11F
→
08/21 16:47, , 12F
08/21 16:47, 12F
→
08/21 16:49, , 13F
08/21 16:49, 13F
→
08/21 16:50, , 14F
08/21 16:50, 14F
推
08/21 16:59, , 15F
08/21 16:59, 15F
→
08/21 17:16, , 16F
08/21 17:16, 16F
→
08/21 19:32, , 17F
08/21 19:32, 17F
推
08/22 09:05, , 18F
08/22 09:05, 18F
推
08/22 09:49, , 19F
08/22 09:49, 19F
推
08/22 10:06, , 20F
08/22 10:06, 20F
推
08/22 13:37, , 21F
08/22 13:37, 21F
討論串 (同標題文章)