百鸡问题扩展-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
( 假设公鸡: X只,母鸡: Y只 ,小鸡 Z只,则有5x + 3y +1/3z = n , x+y+z = n z%3==0
利用循环 ,求解)
#include<stdio.h>
int main()
{int n;int c = 0,s = 0, i, j;scanf("%d",&n);for(i=0;i<=n/5;i++) //公鸡只数范围{for(j=0;j<=n/3;j++) //母鸡只数范围{for(k=0;k<3*n;k++) //小鸡只数范围{if(5*i+3*j+k/3==n&&k%3==0&i+j+k==n){c++; //记录方法数s = s + i;}}}}if(c==0)s=-1;printf("%d %d",c,s);return 0;
}
由于三种鸡数量之和为N,所以可以用N和其中任意两种鸡数量的表示第三种鸡的数量,以此来减少循环次数
简化后得到
#include<stdio.h>
int main()
{int n;int c=0,s=0,i,j;scanf("%d",&n);for(i=0;i<=n/5;i++) {for(j=0;j<=n/3;j++) {int k=n-i-j; //用其它鸡的数量与 N 的关系表示小鸡数减少循环次数``if(5*i+3*j+k/3==n&&k%3==0){c++;s=s+i;}}}if(c==0)s=-1;printf("%d %d",c,s);return 0;
}
百鸡问题扩展-N鸡问相关推荐
- 百鸡问题扩展-N鸡问题
百鸡问题扩展-N鸡问题 N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买. 有几种买法呢?这就是N鸡问题 输入格式: 在一行中输入一个正整 ...
- PTA 百鸡问题扩展-N鸡问题
PTA 百鸡问题扩展-N鸡问题 (10分) 我真的要吐槽一下这个题,当时学校搞校内选拔,我当时一眼看到这个题我以为要用什么动态规划,DFS来搞,然后就写了一个栈的代码,结果内存超限太严重把学校电脑写蓝 ...
- 百鸡问题扩展-N鸡问题N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买。
N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买. 有几种买法呢?这就是N鸡问题. 输入格式: 在一行中输入一个正整数N.(N<50 ...
- 百鸡问题扩展-N鸡问题N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买。 有几种买法呢?这就是N鸡问题。
N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买. 有几种买法呢?这就是N鸡问题. 输入格式: 在一行中输入一个正整数N.(N<50 ...
- 百鸡问题扩展-N鸡问题(枚举)
N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买. 有几种买法呢?这就是N鸡问题. 输入格式: 在一行中输入一个正整数N.(N<50 ...
- 第一周学习任务:百鸡问题扩展-N鸡问题
1.本文的结构 目录 1.本文的结构 2.题目详情 3.求解思路 4.效果展示 5.源码分享
- 百钱买百鸡。今有鸡翁一,值钱伍;鸡母一,值钱三;鸡鶵三,值钱一。凡百钱买鸡百,问鸡翁、母、鶵各几何
百钱买百鸡.今有鸡翁一,值钱伍:鸡母一,值钱三:鸡鶵三,值钱一.凡百钱买鸡百,问鸡翁.母.鶵各几何 #include <iostream> using namespace std;int ...
- 基础算法002-----百钱百鸡问题(扩展问题)
百鸡问题扩展: N 鸡问题 N元钱买N只鸡,公鸡每只5元,母鸡每只3元,小鸡1元3 只,N元钱必须刚好买N只鸡,而且鸡必须整只买,不能劈开买.请问有几种买法? 要求: 输入格式: 在一行中输入一个正 ...
- 一个笼子里面关了鸡和兔子(鸡有2 只脚,兔子有4 只脚,没有任何例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。
Problem Description 一个笼子里面关了鸡和兔子(鸡有2 只脚,兔子有4 只脚,没有任何例外).已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物. Input ...
最新文章
- AI时代数据之争,我们需要什么样的“数据权”?
- Releases 31 Authoritative Schedule,等10月29日发布了~~~
- 图论解决复杂路口红绿灯安排,python语言实现
- mysql 分组查询原理,MySQL分組查詢Group By實現原理詳解
- 简单的datalist分页代码
- 写一个简单的实时互动小游戏
- CSS3 背景裁剪区域 background-clip属性
- 拳王虚拟项目公社:怎么找低价电影票,低价电影票怎样赚钱,低价电影票实操赚钱方法?
- vue报错Invalid Host header
- ZigBee TI ZStack CC2530 8.4 如何用高版本IAR打开低版本协议栈
- 事故频发,自动驾驶技术该何去何从?
- bzoj 4001: [TJOI2015]概率论(找规律)
- 求解图的连通块数量——DFS方法实现
- Java开发webservice接口
- Oracle12c使用AFD(Oracle ASM Filter Driver)特性部署集群的配置方法
- 网上经常听到的“终端”指的什么?
- Tomcat执行startup.bat出现闪退的可能原因
- VC6命令行编译配置
- 重装系统 重启计算机失败,电脑重装系统失败,不能开机了,怎么办,急求解决办法啊...
- ARM加载Realtek-8188CUS USB无线网卡(二)_连接到WiFi网络