显然这个问题应该转化为解线性方程组,但是你又要用简单的方法,那就只能用非常耗时间的穷举了,如果用这个跑OJ,必然超时
#include
int main()
{
int i, j, k, l; // 羊犬鸡兔
int flag = 0;
for(i = 1; i<300&&flag==0 ; ++i) // 1496/5==299
for(j = 1; j<375&&flag==0; ++j) // 1496/4==374
for(k = 1 ; k<137&&flag==0; ++k) // 958/7==136
for(l = 1; l<192&&flag==0; ++l) // 958/5==191
{
if(5*i+4*j+3*k+2*l==1496 &&
4*i+2*j+6*k+3*l==1175 &&
3*i+1*j+7*k+5*l==958 &&
2*i+3*j+5*k+1*l==861)
flag = 1;
}
printf("兔的价钱为:%d\n", l);
return 0;
}