编程题
参赛名单 ### 题目描述 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 就是一种可能的情况。 ### 输入描述 无输入。 ### 输出描述 每个答案占一行,参赛同学按字母升序排列,用空格分隔。若有多个答案,则以字典序输出每个答案。 ### 知识点 - 命题的表示 - 命题的真值 - 枚举 - 搜索 ### 提示 枚举所有可能的组合,看是否满足10个约束条件,由于枚举量有10个,需要采用十重循环实现。也可以采用搜索实现。
查看答案
赣ICP备20007335号-2