学习小结
百鸡问题扩展-N鸡问题
N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买。
有几种买法呢?这就是N鸡问题。
输入格式:
在一行中输入一个正整数N。(N<500)
输出格式:
在一行中输出两个整数c s,中间用一个空格隔开,表示N元钱买N只鸡共有 c 种买法,且所有买法的公鸡数量之和是 s。
如果无解,则 s 为 -1.
输入样例1:
100
输出样例1:
4 24
输入样例2:
1
输出样例2:
0 -1
源代码:
#include <iostream>
#include <string>
#include <stdlib.h>
using namespace std;
int main(){
int n;
cin>>n;
int s=0;
int i,sum=0;
for(i=0;i<=n/5;i++){
for(int j=0;j<=n/3;j++){
if(14*i+8*j==2*n){
sum=sum+i;
s++;
}
}
}
if(s==0){
sum=-1;
}
cout<<s<<" "<<sum<<endl;
return 0;
}