若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。


  • 运维

  • 前端

  • 编程

  • 随笔

  • hust-oj

1323: 逻辑推断

发表于 2017-10-06   |   分类于 HUSTOJ   |   阅读次数 1,462

题目描述

A、B、C、D、E、F、G、H、I、J 共10名学生有可能参加本次计算机竞赛,也可能不参加。因为某种原因,他们是否参赛受到下列条件的约束:
   1. 如果A参加,B也参加;
   2. 如果C不参加,D也不参加;
   3. A和C中只能有一个人参加;
   4. B和D中有且仅有一个人参加;
   5. D、E、F、G、H 中至少有2人参加;
   6. C和G或者都参加,或者都不参加;
   7. C、E、G、I中至多只能2人参加  
   8. 如果E参加,那么F和G也都参加。
   9. 如果F参加,G、H就不能参加
   10. 如果I、J都不参加,H必须参加
请编程根据这些条件判断这10名同学中参赛者名单。如果有多种可能,则输出所有的可能情况。每种情况占一行。参赛同学按字母升序排列,用空格分隔。
比如:
C D G J
就是一种可能的情况。
多种情况的前后顺序不重要

输入

暂无

输出

暂无

样例输入

暂无

样例输出

暂无

参考代码

#include<stdio.h>
int main() 
{
    int A,B,C,D,E,F,G,H,I,J;
    for (A=0;A<2;A++)
        for (B=0;B<2;B++)
        for (C=0;C<2;C++)
        for (D=0;D<2;D++)
        for (E=0;E<2;E++)
        for (F=0;F<2;F++)
        for (G=0;G<2;G++)
        for (H=0;H<2;H++)
        for (I=0;I<2;I++)
        for (J=0;J<2;J++) 
    {
        if(A&&!B)continue;
        if(!C&&D)continue;
        if(A&&C)continue;
        if((B&&D)||(!B&&!D))continue;
        if((D&&!E&&!F&&!G&&!H)||(!D&&E&&!F&&!G&&!H)||(!D&&!E&&F&&!G&&!H)||(!D&&!E&&!F&&G&&!H)||(!D&&!E&&!F&&!G&&H)||(!D&&!E&&!F&&!G&&!H))continue;
        if((C&&!G)||(!C&&G))continue;
        if((C&&E&&G&&I)||(!C&&E&&G&&I)||(C&&!E&&G&&I)||(C&&E&&!G&&I)||(C&&E&&G&&!I))continue;
        if(E&&!(F&&G))continue;
        if(F&&!(!G&&!H))continue;
        if((!I&&!J)&&!H)continue;
        if(A==1)
                printf("A ");
        if(B==1)
                printf("B ");
        if(C==1)
                printf("C ");
        if(D==1)
                printf("D ");
        if(E==1)
                printf("E ");
        if(F==1)
                printf("F ");
        if(G==1)
                printf("G ");
        if(H==1)
                printf("H ");
        if(I==1)
                printf("I ");
        if(J==1)
                printf("J ");
        printf("n");
    }
    return 0;
}

解析

暂无

hustoj

发表评论 取消回复

邮箱地址不会被公开。 必填项已用*标注

*
*


hoxis wechat
著作权归作者所有
站点更新说明
  • 文章目录
  • 站点概览
若是凉夜已成梦

若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。

1904 日志
6 分类
12 标签
RSS
weibo github twitter facebook

友情链接

Skip 原站点 Dreams孤独患者
© 2017 若是凉夜已成梦
Powered by WordPress | 已运行
Theme By NexT.Mist