PHP 板


LINE

看板 PHP  RSS
※ 引述《dlikeayu (太阳拳vs野球拳)》之铭言: : ※ [本文转录自 Prob_Solve 看板 #1Fq9QlzU ] : 剩BBCE : 请问用算的这种有什麽演算法能适用解决呢? 我直觉想到的方法… 大概就是硬干吧,算不上什麽演算法 XD 不过我看了推文和 prob_solve 的意见,觉得可以换个角度看原先的 data set 因为这是在 PHP 板,所以以下的程式我用 PHP 回(虽然cshrap也可以 XD) // 原先的 data set $a_set = array('A', 'B', 'C'); $b_set = array('A', 'D', 'E'); $data_set = array('B', 'C', 'E', 'B', 'A', 'D', 'E'); // 将 data_set 转成 key => count 的格式 $converted_data = array(); foreach($data_set as $d) { $converted_data[$d] ++; } // 预设两个 set 取得的组数 $a_set_count = PHP_INT_MAX; $b_set_count = PHP_INT_MAX; // check B set foreach($b_set as $b) { $b_set_count = min($converted_data[$b], $b_set_count); } foreach($b_set as $b) { $converted_data[$b] = $converted_data[$b] - $b_set_count; } // check A set foreach($a_set as $a) { $a_set_count = min($converted_data[$a], $a_set_count); } foreach($a_set as $a) { $converted_data[$a] = $converted_data[$a] - $a_set_count; } 其实重复的地方可以包成 function 比较好重复利用 不过因为你的范例只有给两组,所以我偷懒的没另外包 跑出来结果大概就是这样 a_set_count = int 0 b_set_count = int 1 剩下的阵列:2B 1C array (size=6) 'B' => int 2 'C' => int 1 'E' => int 1 'A' => int 0 'D' => int 0 附上 webgrind 的结果 Calls Count Total php::var_dump @ 45 1 25 php::min @ 26 3 8 php::var_dump @ 42 1 7 php::var_dump @ 43 1 5 php::min @ 35 3 4 Total Self Cost : 228 Total Inclusive Cost: 302 以上单位为 microseconds 运算的时候要维护 array 有点麻烦 -___- 所以我改用这种方法做 效能的话… 不知道该跟什麽比较… 不清楚 只是提供一个想法。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.85.64.11
1F:→ chrisQQ:原来 csharp 板有板友回了概念类似的文章了… 06/08 14:49
2F:推 carlcarl:我直觉的作法也是这样作@@a 06/09 02:16
3F:→ chrisQQ:不过原PO有在 csharp 版回覆後面的问题… 也难怪说要找 06/09 07:32
4F:→ chrisQQ:演算法 XD 後来还有权重和排列组合 hmm 06/09 07:33
5F:→ dlikeayu:还是感谢,都是学习 06/09 23:46







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP