举例:
1,2,3,4,5分组
第一类分组【1,2】【3】【5】
第二类分组【3,4】【1,2,4】【5】
第三类分组【3,5】【2,2,4】
每个数字只能出现在一个类别里,每个分组里的数字不能重复,数字全部分完,满足条件的分组是【1,2,4】【3,5】
数字个数为M,类别数量为N,每个类别的分组不定。求第一个满足条件的分组。

解决方案 »

  1.   

    你这个问题,只有说一下“解决思路”了:// 第1层循环:遍历所有“分类”
    {
        // 把待判断数据放入一个“临时数组”内,比如你说的“1,2,3,4,5”
        // 用一个变量记数:此处变量置0
        // 第2层循环:遍历“本分类”所有的分组
        {
            // 第3层循环:遍历各分组的元素。 可能还要用到第4层循环。
            // 判断每一个分组元素是否存在于“临时数组”中
            if (在临时数组内)
            {
                // 记数变量 +1
                // 把该元素从“临时数组”内移除
            }
            else
            {
                // 跳出第3层、第2层循环(注意:方法及流程)
            }
        }       // 第2层循环结束
        if (记数变量 == 数据个数)
        {
            // "本分类“符合要求
        }
        else
        {
            // “本分类”不符合要求
        }
    }
    // 其它后续处理