问一道推理题

问题描述

有a,b,c3个老师各交2门课,互不重复。共有6门课语文算术政治地理音乐美术已知:1政治老师和算术老师是邻居。2地理老师比语文老师年龄大。3B最年青4A经常对地理老师和算术老师讲他看过的文学作品。5B经常和音乐老师和语文老师一起游泳。输出A,B,C老师各交的哪两门课。!~能不能用编程实现(可读性要好)

解决方案

解决方案二:
用完全面向对象编程解决(源码和解释都有)实现主要逻辑为SubjectChinese=newSubject("语文");SubjectMath1=newSubject("算术");SubjectPolitics=newSubject("政治");SubjectGeography=newSubject("地理");SubjectMusic=newSubject("音乐");SubjectArt=newSubject("美术");//1政治老师和算术老师是邻居。Politics.SetEnemy(refMath1);//2地理老师比语文老师年龄大。Geography.SetEnemy(refChinese);//3B最年青Geography.SetEnemy("B");//4A经常对地理老师和算术老师讲他看过的文学作品。Geography.SetEnemy(refMath1);Geography.SetEnemy("A");Math1.SetEnemy("A");//5B经常和音乐老师和语文老师一起游泳。Music.SetEnemy(refChinese);Music.SetEnemy("B");Chinese.SetEnemy("B");
解决方案三:
哪天程序也能猜谜语就好了……
解决方案四:
//SetEnemy表示不互斥不能共存,可能是科目也可以是教师
解决方案五:
A:语文.政治.B:算术.美术.C:地理.音乐.好像写编程比较麻烦,判断条件太多?
解决方案六:
判断条件太多了?难道你是用猜的?
解决方案七:
b美术政治a语文音乐c算术地理
解决方案八:
如果b是美术和政治老师是答案是唯一的
解决方案九:
答案是唯一的4楼是对的A:语文政治B:算术美术C:地理音乐
解决方案十:
1政治老师和算术老师是邻居。//政治老师跟算术老师不是同一个人2地理老师比语文老师年龄大。//地理老师跟语文老师不是同一个人,B不是地理老师3B最年青//小B最小4A经常对地理老师和算术老师讲他看过的文学作品。//只说明A不教地理跟算术,但只能理解为地理跟算术不是同一个人5B经常和音乐老师和语文老师一起游泳。//只说明B不教音乐跟语文,也只能理解为音乐和语文不是同一个人结果:很容易得到C:地理,音乐;但A,B只能靠那个不算条件的条件:A:语文,政治;B:算术,美术!
解决方案十一:
结果很容易得到,接楼上了,做了简单分析,现在大家可以看懂了:1政治老师和算术老师是邻居。//政治老师跟算术老师不是同一个人2地理老师比语文老师年龄大。//地理老师跟语文老师不是同一个人,B不是地理老师3B最年青4A经常对地理老师和算术老师讲他看过的文学作品。//只说明A不教地理跟算术,但只能理解为地理跟算术不是同一个人5B经常和音乐老师和语文老师一起游泳。//只说明B不教音乐跟语文,也只能理解为音乐和语文不是同一个人开始推理首先可以得出C是教地理的因为A不教地理跟算术,B也不教地理得出C:地理地理老师跟语文老师不是同一个人,得出C不教语文,但是B也不教语文,所以得出A:语文地理跟算术不同是一个人,说明C不教算术,但A不教算术得出B:算术目前还剩下:政治,美术,音乐政治跟算术不是同一个人说明B不教政治,B也不教音乐得出B:美术还剩下政治,音乐音乐和语文不是同一个人,说明A:政治则C:音乐
解决方案十二:
写程序有点麻烦4楼正解
解决方案十三:
一楼的程序不错,能不能说明一下思路?

时间: 2024-08-29 12:13:11

问一道推理题的相关文章

排列组合 算法-问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,

问题描述 问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列, 问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,数组例如(±1.6,±1,±0.6,0) 七选四 解决方案 840-------偶排列数:420 程序 public class test { static void f(double[] a,int n,String v){ if(n==a.length){ System.out.println(v); }else{ f(a,n+1

ctf-新手求教一道CTF题……

问题描述 新手求教一道CTF题-- 10C 这个题目应该就是要模仿本地登录吧,题目网址是校园网,求大神告解怎么本地登录-- 解决方案 估计是问你sql注入攻击.比如填上密码 aa' or '1'='1 解决方案二: 解决方案三: 学一下http头..................

c语言-关于c的一道纠错题 求助!!

问题描述 关于c的一道纠错题 求助!! #include #include struct container { int number; char *string;}; int main(){ struct container *c; c = malloc(sizeof(struct container));if (c == NULL) exit(1);scanf(""%d"" &c->number);scanf(""%s"

问一道编程题目,大家帮忙看下谢了

问题描述 问一道编程题目,大家帮忙看下谢了 拼点游戏 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 C和S两位同学一起玩拼点游戏.有一堆白色卡牌和一堆蓝色卡牌,每张卡牌上写了一个整数点数.C随机抽取n张白色卡牌,S随机抽取n张蓝色卡牌,他们进行n回合拼点,每次两人各出一张卡牌,点数大者获得三颗巧克力,小者获得一颗巧克力,如果点数相同,每人各得二颗巧克力,使用过的卡牌不得重复使用.已知C和S取到的卡牌点数,请编程计算S最多和最少能得到多少颗巧克力. 输入 输

新手求助-一道编程题,能给个代码学习下么?

问题描述 一道编程题,能给个代码学习下么? AVL树是指左右子树的高度差不超过1,现在有一颗n个节点的AVL树,问这样的树有多少种.比如n为10,答案为60种,时间效率要求尽量高. 解决方案 递归问题,有一颗n个节点的AVL树有多少种可以转化为问已经有了一个根节点,求n-1个节点的AVL树有多少种 如果只有一个节点,那么只有1种. 解决方案二: 我在你前一个问题中给出思路了,你看看能不能懂,自己先尝试写下代码,这样才能提高你的编码能力,我有空帮你写个代码. 这是道动态规划题, 挺好的我觉得.

一道算法题,看看大家的思路(续)

"一道算法题,看看大家的思路",看了众多的回复,本人愚钝,没有看明白其中的奥妙.在细细研究<编程之美>中的文章后,终于理解了这个算法的思路.现将这个算法的演算过程以及代码实现(VB2005)赋予其后,和各位交流. 现再将题目复述一遍: 题目描述:有31,-41,59,26,-53,58,97,-93,-23,84十个数.SUM(N,M)表示从第N个数到到第M个数的和.例如:SUM(2,3)=-41+59=18.问:最大的和是多少?对应的N和M是多少? 先不管N和M的计算,直

字符串-一道ACM题,为什么会这样?

问题描述 一道ACM题,为什么会这样? Description输入一个字符串,判断其是否是C++的合法标识符. Input输入数据包含多个测试实例,数据的第一行是一个整数n表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串.输入保证不为C++的关键字(保留字). Output对于每组输入数据,输出一行.如果输入数据是C++的合法标识符,则输出""yes"",否则,输出"no". Sample Input312ajffi8x_

问一道acm题目,下楼梯递归的

问题描述 问一道acm题目,下楼梯递归的 下楼梯查看 提交 统计 提问总时间限制: 1000ms 内存限制: 1000kB描述从楼上走到楼下共有h个台阶,每一步有3种走法:走1个台阶,走2个台阶,走3个台阶.问可走出多少种方案,并打印出具体方案?输入台阶个数h输出各种走法方案及总方案个数样例输入5样例输出plan 1:32plan 2:311plan 3:23plan 4:221plan 5:212plan 6:2111plan 7:131plan 8:122plan 9:1211plan 10

问一道开关电灯的acm题目

问题描述 问一道开关电灯的acm题目 开关电灯查看 提交 统计 提问总时间限制: 1000ms 内存限制: 65536kB描述N盏灯排成一排,从1到N依次编号.有N个人也同样编号.第一个人将灯全部熄灭:第2个人将对应2和2的倍数的灯打开:第3个人将对应着3和3的倍数的灯做反向操作(如果原来是开,则关掉它,否则就打开它):以后的人和3做同样的操作,即第i个人将对应着i和i的倍数的灯做反向操作.输入灯的总数N 1<=N<=1000输出在第N个人操作后,顺序输出还亮着灯的编号.样例输入8样例输出2