博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
递归 换零钱问题——由打靶子问题引申
阅读量:4677 次
发布时间:2019-06-09

本文共 839 字,大约阅读时间需要 2 分钟。

原文发布时间为:2009-03-01 —— 来源于本人的百度文章 [由搬家工具导入]

using System;

//using System.Collections.Generic;
//using System.Text;
/*有任意张1毛,2毛,5毛钱,有几种组合可以组成9毛钱的方法。用递归实现并输出各种组合方法。*/
namespace digui1
{
    public class Class3
    {
        public static int sum = 0;
        public static int[] a = new int[] { 1, 2, 5 };
        public static int[] store = new int[9];
        public static void Main()
        {
            fun(9, 0);
            Console.WriteLine("总数为{0}", sum);
            Console.ReadLine();
        }

        public static void fun(int money, int k)

        {
            if (money< 0)
                return;
            if (money == 0)
            {
                Output(k);
                return;
            }
            for (int i = 0; i < 3; i++)
            {
                if (k == 0 || (k > 0 && a[i]>= store[k - 1]))//递增输出防止重复
                {
                    store[k] = a[i];
                    fun(money - a[i], k + 1);
                }
            }
        }
        public static void Output(int k)
        {
            for (int i = 0; i < k; i++)
            {
                Console.Write("{0} ", store[i]);
            }
            Console.WriteLine();
            sum++;
        }
    }
}

转载于:https://www.cnblogs.com/handboy/p/7148506.html

你可能感兴趣的文章
移动 WebApp 开发 -- 笔记
查看>>
Oracle11g字符集AL32UTF8修改为ZHS16GBK详解
查看>>
Java-正则表达式的学习
查看>>
java 内存回收(GC)的方式
查看>>
解决浮动元素不在一行
查看>>
不修改原数组方法
查看>>
32位Windows 7环境安装Pydasm和Pydbg
查看>>
使用jQuery开发一个响应式超酷整合RSS信息阅读杂志
查看>>
Xcode-程序开发设计-02九宫格
查看>>
多线程篇-RunLoop
查看>>
ASP.NET MVC学习(四)之视图View
查看>>
CSS魔法(五)项目实战
查看>>
JavaScript常用函数总结
查看>>
Windows Defender 无法启动
查看>>
自动装箱和自动拆箱
查看>>
shell脚本编程常识
查看>>
Javascript 页面刷新
查看>>
jdbcUtils 存档
查看>>
Java常量池解析与字符串intern简介
查看>>
[Loadrunner参数化]一个文件输两列参数的取值
查看>>