hihocoder-1498-Diligent Robots

Posted zhang-yd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hihocoder-1498-Diligent Robots相关的知识,希望对你有一定的参考价值。

hihocoder-1498-Diligent Robots

 

#1498 : Diligent Robots

时间限制:10000ms
单点时限:1000ms
内存限制:256MB

描述

There are N jobs to be finished. It takes a robot 1 hour to finish one job.

At the beginning you have only one robot. Luckily a robot may build more robots identical to itself. It takes a robot Q hours to build another robot.  

So what is the minimum number of hours to finish N jobs?

Note two or more robots working on the same job or building the same robot won‘t accelerate the progress.

输入

The first line contains 2 integers, N and Q.  

For 70% of the data, 1 <= N <= 1000000  

For 100% of the data, 1 <= N <= 1000000000000, 1 <= Q <= 1000

输出

The minimum number of hours.

样例输入
10 1
样例输出
5

 

 

 

题解:

  使用贪心算法的思想。

  样本复制之后需要去生产才有效,所以机器人必定是先复制完。

  还有一个想法是是否需要一边复制一边生产,这个想法是否定的,假如n生产m复制,得到的是 m + (q+1)*n.  如果是一起复制,则得到的是 (m + n)*q , 大于前者。

 

 

#include <cstdio> 
#include <cstdlib> 

int main()

    int q; 
    long long cnt, n, k; 
    while(scanf("%lld %d", &n, &q) != EOF)
    
        cnt = 0; 
        k = 1; 
        while(2*q*k < n)
        
            k *= 2; 
            cnt += q; 
        
        cnt += n / k; 
        if(n%k != 0)
        
            cnt += 1; 
        
        printf("%lld\n", cnt );
    
    return 0; 

  

 

以上是关于hihocoder-1498-Diligent Robots的主要内容,如果未能解决你的问题,请参考以下文章

hihocoder1498 Diligent Robots

——R的数据组织

——R的数据组织

+-r, +-s 的所有排列

shinydashboard ui.R 和 server.R 未读取 Global.R

R语言计算回归模型R方(R-Squared)实战