有3串糖葫芦,分别有3种水果串在上面,山楂、猕猴桃、小番茄、问 怎么把它们分别取出,按相同的种类放到不同的棍子上
举例 A上面有2个山楂、3个猕猴桃、4个小番茄 B上有 4个山楂、1小番茄、2个猕猴桃、C上有3个山楂,4个番茄A B C分别表示串水果的棒子 结果是 A上面全部串山楂,B 上面全部是番茄, C上面全部是猕猴桃用C++表示出来 简单点的

解决方案 »

  1.   

    代码实现就算了,不过给你说个实现的算法:
    下面用E:山楂,F:泥猴桃,G:小番茄
    1,将A上的说果分成2中,不是E和E,E放到B上,非E放到C上;
    2,将放到B上的E移到A上,非E放到C上;
    3,将C上的非E放到B上,E放到A上(这时,A上面的水果全是E了,统计个数,);
    4,将B上的G放到C上,F放到A上;
    5,将A上的F移到B上(上面统计的个数用到)。
      

  2.   

    最简单的就是,再定义三个数据链H,I,J,然后分别遍历A,B,C.是山楂就给H,是番茄就给I,是猕猴桃就给J。然后,分别把H,I,J拷贝给A,B,C。就这么简单。