栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言每日一练——第66天:委派任务问题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言每日一练——第66天:委派任务问题

C语言每日一练
2021年12月11日

文章目录
  • 题目描述
  • 问题分析
  • 代码实现
  • 运行结果

题目描述

某项任务需要在A、B、C、D、E、F这6个人中挑选人来完成,但挑选人受限于以下的条件:
(1) A和B两个人至少去一人;
(2) A和D不能同时去;
(3) A、E和F三人中要挑选两个人去;
(4) B和C同时去或者都不去;
(5) C和D两人中只能去一个;
(6) 如果D不去,那么E也不去。

试编程求出应该让哪几个人去完成这项任务。

问题分析

这种简单题适合用遍历法,遍历所有的委派组合,定义 a-e 6个整型变量,值为1表示被委派,0表示没有被委派。

将题目的条件翻译成条件语句:
(1) a + b >= 1
(2) a + d < 2
(3) a + e + f == 2
(4) (b + c == 2) || ( b + c ) == 0
(5) c + d == 1
(6) (d + e == 0) || d

如果遍历的组合同时满足上面所有的条件,则视为题目结果。

代码实现
#include 

int main()
{
    int a, b, c, d, e, f;
    for(a = 0; a <= 1; a++)
        for(b = 0; b <= 1; b++)
            for(c = 0; c <= 1; c++)
                for(d = 0; d <= 1; d++)
                    for(e = 0; e <= 1; e++)
                        for(f = 0; f <= 1; f++)
                            if((a + b >= 1) &&
                                    (a + d < 2) &&
                                    (a + e + f == 2) &&
                                    ((b + c == 2) || (b + c == 0))&
                                    (c + d == 1) &&
                                    ((d + e == 0) || d))
                            {
                                printf("需要委派 ");
                                if(a)
                                    printf("A ");
                                if(b)
                                    printf("B ");
                                if(c)
                                    printf("C ");
                                if(d)
                                    printf("D ");
                                if(e)
                                    printf("E ");
                                if(f)
                                    printf("F ");
                                printf("去完成任务n");
                            }
    return 0;
}

运行结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/655663.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号