比较“笨”的枚举算法

Posted hxf175336

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了比较“笨”的枚举算法相关的知识,希望对你有一定的参考价值。

枚举即一一列举。

一、枚举算法的思想

  将问题所有的可能答案一一列举,然后根据实际情况选择合适而丢弃不合适的。在c语言中,枚举算法一般使用while循环实现。

二、实例演练

(1)“百钱买百鸡”问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?

  代码实现:

#include "stdio.h"
int main()
{
    int x, y, z;
    for (x = 0; x <= 20;x++)
    {
        for (y = 0; y <= 33;y++)
        {
            z = 100 - x - y;
            if (z % 3 == 0 && x * 5 + y * 3 + z / 3 == 100)
            {
                printf("公鸡:%d,母鸡:%d,小鸡:%d
", x, y, z);
            }
        }
    }
    system("pause");
    return 0;
}

  实现结果:

    技术分享图片

(2)“填写运算符”问题。

  代码实现:

 

  实现结果:

 

  

以上是关于比较“笨”的枚举算法的主要内容,如果未能解决你的问题,请参考以下文章

Python数据结构与算法---枚举类型enum

Python数据结构与算法---枚举类型enum

带有红宝石集合/可枚举的酷技巧和富有表现力的片段[关闭]

程序设计与算法算法基础》《第一周 枚举》熄灯问题 POJ-1222

笨办法理解动态规划算法

leetcode 12.整数转罗马数字