博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
比赛--整理花园问题--解题报告
阅读量:6977 次
发布时间:2019-06-27

本文共 1427 字,大约阅读时间需要 4 分钟。

整理花园问题

题目大意:

有三户人家共拥有一座花园,每户人家的太太均需帮忙整理花园。A 太太工作了5 天,B 太太则工作了4 天,才将花园整理完毕。C 太太因为正身怀六甲无法加入她们的行列,便出了90元。请问这笔钱如何分给A、B 二位太太较为恰当?A 应得多少元?90/(5+4)*5=$50 元?如果这么想你就上当了!正确答案是60 元。如果没想通的话再想想吧。
下面回答一个一般性的问题:假定A 太太工作了x 天,B 太太工作了y 天,C 太太出了90元,则A 太太应得多少元?输入保证二位太太均应得到非负整数元钱。三个太太工作效率相同。
友情提示:本题有个小小的陷阱哦。如果答案错的话,认真检查一下代码吧。
要求:
Input
输入第一行为数据组数T (T<=20)。每组数据仅一行,包含三个整数x, y, z (1<=x, y<=10,1<=z<=1000)。
Output
对于每组数据,输出一个整数,即A 太太应得的金额(单位:元)。样例输入:
Sample Input
25 4 908 4 123
Sample Output
60123 注意提示: 如果使用浮点数,请小心误差,输出时尽量用四舍五入。 题目分析: 这是一道典型的数学问题。做题前首先要做出计算公式,找到公式后写程序就简单了。要想得到A太太所得的钱数,因为要考虑到浮点数为问题,根据计算得到公式 三人都做每人应做的天数s=(x+y)/3.0;A多做的天数a=x-s;B多做的天数b=y-s;C应该付给A的钱数pay=a/(a+b)*z。 程序代码:
1 #include
2 #include
3 using namespace std; 4 5 int T[20]; 6 int y[10]; 7 int z[1000]; 8 9 int main ()10 {11 int T;12 scanf("%d",&T);13 while(T--)14 {15 int x,y,z;16 double a,b,s,pay;17 18 19 scanf("%d%d%d",&x,&y,&z);20 21 s=(x+y)/3.0; //三人都做每人应做的天数22 a=x-s; //A多做的天数23 b=y-s; //B多做的天数 24 pay=a/(a+b)*z; //C应付给A的钱数25 int k=pay+0.5; //将钱数四舍五入得到整数26 cout<
<

心得:

这道题看起来很简单,但就是在计算A应该得到多少钱时,总也找不到关系式,所以计算了很久。找到关系式后,程序很快就写完啦。算是一道很简单的题目。

觉得自己在思考方面还存在一些问题,下次应该更多做一些数学题,锻炼一下自己的思维能力。

 

 

转载于:https://www.cnblogs.com/ttmj865/p/4654852.html

你可能感兴趣的文章
2017 4月14日
查看>>
KMP
查看>>
CefSharp .net
查看>>
java中关于null的一些理解
查看>>
sqlite3中的数据类型
查看>>
1.26-CAD异形封装的制作
查看>>
android ImageLoader加载本地图片的工具类
查看>>
安全的发布 .NET 应用的改动到产品服务器环境
查看>>
解析含有资源类型的字符串
查看>>
C#:简单递归累加算法
查看>>
day13_H5_CSS_2
查看>>
Sass (Syntactically Awesome StyleSheets)
查看>>
ASN.1探索 - 3 编码规则与传输语法(3 - PER)(转)
查看>>
Jmeter+ant+jenkins集成
查看>>
使用 DX 编译 Android应用
查看>>
第一章:Nginx安装
查看>>
React-Native学习指南
查看>>
用cssText属性批量操作样式
查看>>
C语言 Web实时消息后台服务器推送技术---GoEasy
查看>>
警惕javascript变量的全局污染问题
查看>>