Problem Y — limit 1 second

Problem Y — limit 1 second

Delayed Work
You own a company that hires painters to paint houses. You can hire as many painters as you want,
but for every painter you hire, you have to pay X dollars (independent of how long the painter
works on the house). In addition, you have to pay a penalty of D · P dollars overall if it takes D
days to finish painting the house. This penalty does not depend on the number of painters you
hire; furthermore, even if the time taken is not a whole number of days, you are only penalized for
the exact time taken.
All painters paint at the same rate. One painter can finish painting the house in K days. The
painters cooperate so well that it will only take K/M days for M painters to finish painting the
house.
What is the minimum amount of money you will have to pay, including what you pay to the painters
and the cost penalty, to get a house painted?
Input
The input consists of a single line containing three space-separated integers K, P, and X (1 ≤
K, P, X ≤ 10,000).
Output
Print, on a single line, the minimum cost to have the house painted, rounded and displayed to
exactly three decimal places.
Sample Input and Output

31 41 59
549.200

3 4 5
6.000

2017 Pacific Northwest Region Programming Contest
题意:一个人画完画要用K天,每一天要交罚金P,如果要用M个人,用K/M天就可以完成,每个人要给X元,求最少花费。

PS* 我用了高中学的(a+b)<=sqrt(2a*b),当且仅当a=b时,等号成立。

#include<bits/stdc++.h>
using namespace std;
int k, p, x, n;
double  a, b, num;
int main()
{
    scanf("%d %d %d", &k, &p, &x);
    n = sqrt(k * p * 1.0 / x * 1.0);
    a = k * p * 1.0 / n * 1.0 + x * n * 1.0;
    b = k * p * 1.0 / (n + 1) * 1.0 + x * (n + 1) * 1.0;
    if(a>b)
    {
        printf("%.3lf\n", b);
    }
    else
    {
        printf("%.3lf\n", a);
    }
    return 0;
}
c++中文C. Breach of Faith time limit per test2 seconds memory limit per test256 megabytes Breach of Faith - Supire feat.eili You and your team have worked tirelessly until you have a sequence a1,a2,…,a2n+1 of positive integers satisfying these properties. 1≤ai≤1018 for all 1≤i≤2n+1 . a1,a2,…,a2n+1 are pairwise distinct. a1=a2−a3+a4−a5+…+a2n−a2n+1 . However, the people you worked with sabotaged you because they wanted to publish this sequence first. They deleted one number from this sequence and shuffled the rest, leaving you with a sequence b1,b2,…,b2n . You have forgotten the sequence a and want to find a way to recover it. If there are many possible sequences, you can output any of them. It can be proven under the constraints of the problem that at least one sequence a exists. Input Each test contains multiple test cases. The first line contains the number of test cases t (1≤t≤104 ). The description of the test cases follows. The first line of each test case contains one integer n (1≤n≤2⋅105 ). The second line of each test case contains 2n distinct integers b1,b2,…,b2n (1≤bi≤109 ), denoting the sequence b . It is guaranteed that the sum of n over all test cases does not exceed 2⋅105 . Output For each test case, output 2n+1 distinct integers, denoting the sequence a (1≤ai≤1018 ). If there are multiple possible sequences, you can output any of them. The sequence a should satisfy the given conditions, and it should be possible to obtain b after deleting one element from a and shuffling the remaining elements. Example InputCopy 4 1 9 2 2 8 6 1 4 3 99 2 86 33 14 77 2 1 6 3 2 OutputCopy 7 9 2 1 8 4 6 9 86 99 2 77 69 14 33 4 6 1 2 3 1
最新发布
03-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值