2024-07-03 10:18:39
假设最多可能有1000个和尚在山上,用下面的程序可穷举出来
#define TOTAL_MAN 1000
void main(void)
{
int i, j; //i表示大和尚,j表示小和尚
for(i=1; i<TOTAL_MAN; i++)
{
for(j=1; j<TOTAL_MAN-i; j++)
{
if ( i + j == (i*(41/7.0) + j*(11/29.0)))
{
break;
}
}
if (j < TOTAL_MAN-i)
{
break;
}
}
if(i < TOTAL_MAN)
{
printf("大和尚%d个,小和尚%d个,共%d个和尚\r\n", i, j, i+j);
}
else
{
printf("无解,调整总和尚人数\r\n");
}
getchar();
}
2024-07-03 14:29:44