[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[技术讨论] 玩Perl的还活着吗?出个锻炼题:给出两堆数,找出和相同的组合

本帖最后由 523066680 于 2014-8-29 11:55 编辑

其实我刚刚写出来。

实际应用举例:你出了N批货给不同客户,有的客户是一批货分好几次转账付款,有些客户是几批货合并为1个款项转账付款。
但是这些客户一直没有找你对账,有的货款还未收到,他们的付款人姓名也不是其本人,难以分辨哪一笔相对应。通过程序筛出配对的组合,可以辅助判断

俩数组:
@numa = qw/
1
14
72
24
53
66
77
8
/;

@numb = qw/123 344 22 77/;


求出的他们之中,和相同的部分,包括单个元素等于另一个数组多个元素相加的情况:

───────────────────────┐
200                                           │
        A -> 1,72,53,66,8                     │
        B -> 123,77                           │
145                                           │
        A -> 1,14,53,77                       │
        B -> 123,22                           │
99                                            │
        A -> 1,24,66,8 | 14,24,53,8 | 14,77,8 │
        B -> 22,77                            │
77                                            │
        A -> 24,53 | 77                       │
        B -> 77                               │
123                                           │
        A -> 14,24,77,8                       │
        B -> 123                              │
22                                            │
        A -> 14,8                             │
        B -> 22                               │
───────────────────────┘
[url=][/url]

题目看着挺难的,,,目前perl还停留在helloworld阶段。

TOP

Mark,let me think.

TOP

本帖最后由 523066680 于 2014-9-1 21:49 编辑 <