作者sleepwu (狼狽比失去難受)
看板CodeJob
標題[發案] 用C++寫排列組合
時間Fri Jun 8 16:30:13 2012
案件狀態:已結案
發案人:吳先生
聯絡方式1:[email protected]
聯絡方式2:0953828145
所在地區 :
有效時間:這周末結束前,越快越好
專案說明:我的input是txt檔,內容是
1,[1]->[2]->[3]->[4]->[5]->[4]
2,[150]->[865]->[780]->[879]
...
逗號前是資料編號,請保留
逗號後是串列,[]裡是代號,當成字串即可
->是箭頭 代表順序
我想要將每筆資料串列以"長度為5"作另一新的串列
並於此串列進行兩兩排列,不需組合(即由出現的順序先後排列)
並且同一筆資料需移除重複出現的組合及代號相同的組合
以上面的例子來說,就變成
在編號1的第一個長度為5的串列為[1]->[2]->[3]->[4]->[5]
在這串列裡兩兩排列,則為
{[1]->[2],
[1]->[3],
[1]->[4],
[1]->[5],
[2]->[3],
[2]->[4],
[2]->[5],
[3]->[4],
[3]->[5],
[4]->[5]}
而編號1的第二個長度為5的串列為[2]->[3]->[4]->[5]->[4]
在這串列裡兩兩排列,則為
{[2]->[3],
[2]->[4],
[2]->[5],
[2]->[4],//已重複,不輸出
[3]->[4],
[3]->[5],
[3]->[4],//已重複,不輸出
[4]->[5],
[4]->[4],//代號相同,不輸出
[5]->[4]}
至此,編號1已無法再列出長度為5的串列了,就結束
若資料本身長度就小於5,則計算該長度內的組合即可
而不同編號的資料彼此獨立,所以就算1,2有重複的組合也不必處理
output請產生一份.txt
格式為
1,[1]->[2]
1,[1]->[3]
1,[1]->[4]
1,[1]->[5]
1,[2]->[3]
.
.
.
2,[2]->[3]
2,[2]->[4]
2,[2]->[5]
.
.
因為資料到時可能有百萬筆,串列長度也可能上千
因此請考慮程式碼執行的效率
務必使程式碼簡潔,不需UI,但請將完整程式碼寄給我
預算:500左右,程式碼測試OK後即轉帳
接案者要求:不拘,相信這不難
接受新手承案否:是
附註:請來信,我有回信請您幫忙後您再開始寫
以免有多人重複接件
(以下內容鼓勵結案後填寫,可以詢問接案人願不願意暴光接案身份)
結案意見:
接案人:
評價(0-10):
說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.199.250.253
※ 編輯: sleepwu 來自: 60.199.250.253 (06/08 16:32)
※ 編輯: sleepwu 來自: 60.199.250.253 (06/08 16:35)
1F:→ kusoayan:最討厭看到強調「這不難」...不難怎不自己寫 06/08 17:12
2F:→ sleepwu:我寫在接案者要求 代表我接受所有人來接 06/08 17:27
3F:→ angelmark:不難自己寫啊!!!反正不難嘛 06/08 17:27
4F:→ sleepwu:這種程式到底是什麼level的案子 我想很多人都知道 不回應 06/08 17:29
5F:推 bugle:500... 06/08 17:29
6F:→ diabloevagto:多個0可能會有人回應 06/08 17:31
7F:→ sleepwu:價錢可議 請來信報價 06/08 17:32
8F:→ sosokill:"考慮程式碼執行的效率" 恩... 06/08 17:40
9F:→ johnhao1206:效率是要怎樣的效率 06/08 17:43
10F:推 LaPass:挺有趣的..... 應該還是會有接吧? 06/08 17:57
11F:→ LaPass: 人 06/08 17:57
12F:推 PsMonkey:我實在想不到什麼交作業以外的用途 06/08 18:36
※ 編輯: sleepwu 來自: 114.45.130.137 (06/08 18:54)
13F:→ sleepwu:我脫離要交作業很久了 06/08 18:55
14F:→ enthos:看懂需求比較難。例子請加上 2,[150]->[865]->[780]->[879] 06/08 19:01
15F:→ qwertmn:恩..500,效率,測試後轉帳.... 恩.... 06/08 19:55
16F:推 kinom:不會還真的有人去接案吧? 06/08 20:01
17F:推 LaPass:老實說我看不懂他的需求..... 06/08 20:55
18F:推 ryanwang:還真的有人去接案+1 06/08 21:44
19F:推 bobju:光是把[需求釐清]的工,都不只五百. 06/08 22:18
20F:→ enthos:perl高手可用20行程式碼完成(不含高效率),ruby 50行。 06/08 22:26
21F:→ neverfly:不難,但會覺得不難的人,應該也不會想賺這種價格 06/08 23:57
22F:推 NewWuman:不難 自己google就好了 我這推文至少值200 06/09 15:40
※ 編輯: sleepwu 來自: 114.45.136.53 (06/09 17:50)
23F:推 anlick:不難你怎麼不會寫呢?! 很簡單的 加油 06/09 20:21
24F:推 keikolin:呵呵,500,最低打工薪資一小時103.... 06/09 23:17
25F:→ keikolin:真的不值呀~ 難怪原Po要丟出來外包... 06/09 23:19
26F:推 LaPass:一個小時內就解決了吧.... = = 06/09 23:19
27F:→ LaPass:麻煩的是要跟客戶討論事情以及一到對方的龜毛要求改來改去 06/09 23:20
28F:推 keikolin:如果考慮各種例外狀況,應該不只一個小時.... 06/09 23:21
29F:→ LaPass: 依照 06/09 23:21
30F:→ keikolin:難道寫程式不用考慮萬一進來的檔案格式有可能是錯誤的 06/09 23:22
31F:推 keikolin:到時候錯誤要怎麼處理?還有有多少記憶體可以用? 06/09 23:24
32F:→ sleepwu:已結案 接case的先生也釐清幾個問題就寫出來了 謝謝 06/10 00:32
33F:→ sleepwu:他問的問題可能都沒有推文的字多...祝大家接案愉快 06/10 00:36
34F:→ vocaloid:他都接了這個case 何必寫信笑你 06/10 19:15