//题目: 医院有A、B、C、D、E、F、G七位大夫,在一个星期内(星期一至星期天)每人要轮流值班一天。
现已知:
A大夫比C大夫晚一天值班;
D大夫比E大夫晚两天值班;
B大夫比G大夫早三天值班;
F大夫的值班日在B和C大夫的中间,且是星期四;
请确定每天究竟是哪位大夫值班?
思路:
较简单,穷举
#include<stdio.h>
int main()
{
int a, b, c, d, e, f, g;
for (a=1; a<8; a++)
{
for (b=1; b<8; b++)
{
for (c=1; c<8; c++)
{
for (d=1; d<8; d++)
{
for (e=1; e<8; e++)
{
for (f=1; f<8; f++)
{
for (g=1; g<8; g++)
{
if((a-c)==1 && (d-e)==2 && (g-b)==3 && f>b && f<c && f==4
&& a!=b && a!=d && a!=e && a!=f && a!=g
&& b!=d && b!=e && b!=f
&& c!=d && c!=e && c!=f && c!=g
&& d!=f && d!=g
&& e!=f && e!=g
&& f!=g)
printf("%d%d%d%d%d%d%d",a,b,c,d,e,f,g);
}
}
}
}
}
}
}
/* 此处添加你自己的代码 */
getch();
return 0;
}
版权声明:本文为m0_47372937原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。