n钱买n鸡
百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用 100 文钱买 100只鸡,公鸡、母鸡、小鸡各买多少只?
本程序要求解的问题是:给定一个正整数 n,用 n 文钱买 n 只鸡,问公鸡、母鸡、小鸡各买多少只?
输入格式:
输入一个正整数 n。
输出格式:
如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。
如果无解,输出"No Answer."。
数据范围:
1≤n≤200。
#include
int main()
{int n,i,j,flag=0;scanf("%d",&n);if(n>=1&&n<=200)//定义n的范围{ for(i=0;i*5<=n;i++)//确定公鸡的最大只数{for(j=0;j*3<=n;j++)//确定母鸡的最大只数{if((n-5*i-3*j)*3==(n-i-j))//剩余的钱*3等于小鸡的数量{printf("%d %d %d\n",i,j,n-i-j);flag++;}}}}if(flag==0) printf("No Answer.");//无解输出return 0;
}
解题思路:首先输入n,定义flag=0,其次,确定n的范围、公鸡、母鸡的最大只数,再利用剩余量构造一个等式,如果有解则输出,如果无解则flag=0不变,输出No Answer.
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
