zoukankan      html  css  js  c++  java
  • 2015 HUAS Provincial Select Contest #3 D

    题目:

    Description

    有三户人家共拥有一座花园,每户人家的太太均需帮忙整理花园。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 太太应得的金额(单位:元)。

    解题思路:每个人都有一个庄园,把三个庄园看成一个整体,A太太打扫C太太的庄园的面积是5/9-1/3,B太太同理是4/9-1/3,A太太应该得到的钱是90*((5/9-1/3)/((5/9-1/3)+(4/9-1/3)))=60元。

    代码:

     1 #include<iostream>
     2 #include<cstdio>
     3 using namespace std;
     4 int main()
     5 {
     6     int T;
     7     cin>>T;
     8     if(T<=20)
     9     {
    10         int x,y,z,sum,t;
    11         double a,b,c,p;
    12         while(T--)
    13         {
    14             cin>>x>>y>>z;
    15             if(x>=1&&x<=10&&y>=1&&y<=10&&z>=1&&z<=1000&&double(x)/(x+y)>=(1.0/3))
    16             {
    17                 sum=x+y;
    18                 a=double(x)/sum-(1.0/3);
    19                 b=double(y)/sum-(1.0/3);
    20                 a=a/(a+b);
    21                 p=a*z;
    22                 t=int(p);
    23                 p=p-int(p);
    24                 if(p>0.5)
    25                     t+=1;
    26                 printf("%d
    ",t);
    27             }
    28         }
    29     }
    30     return 0;
    31 }
    
    
    
    
    	return 0;
    }
  • 相关阅读:
    密码朋克的社会实验(一):开灯看暗网
    ThinkPHP5框架缺陷导致远程命令执行(POC整合帖)
    SQL基本注入演示
    从SQL注入到内网漫游
    业务逻辑漏洞探索之敏感信息泄露
    Web安全之XSS Platform搭建及使用实践
    iOS URL Schemes与漏洞的碰撞组合
    phpcms2008远程代码执行漏洞
    使用RSA加密在Python中逆向shell
    源码级调试的XNU内核
  • 原文地址:https://www.cnblogs.com/huaxiangdehenji/p/4652415.html
Copyright © 2011-2022 走看看