#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

题目链接:https://hihocoder.com/problemset/problem/1498

思路分析

首先,如果要复制机器,就要尽早复制,因为尽早复制可以尽早投入生产。
我的纠结点在于,复制的最后一轮,会不会有一部分机器人在复制,其他机器人在工作?
通过严谨的证明说明是不会的。

以下证明过程参考一位大神的,很严谨的证明,I love it!QAQ

因为我上面的证明里得到了“T>2qm”这个临界条件,因此在代码里可以直接使用。详解代码中已给出!

下面给出AC代码:

 1 #include <bits/stdc++.h>
 2 typedef long long ll;
 3 using namespace std;
 4 int main()
 5 {
 6     ll n,q;
 7     cin>>n>>q;//n表示任务总数,q表示生产一次机器人需要的时间
 8     ll m=1,r=0;//m表示初始时机器人的数量,r表示生产次数
 9     while(n>2*m*q)//根据结论,机器人应当全部复制
10     {
11         m<<=1;//倍增操作
12         r++;
13     }
14     ll t=q*r+n/m;//总时间为生产机器人所花费的时间q*r+任务数与机器人的比值(每个机器人单位时间生产单位价值的产品)
15     if(n%m)//不能整除的话说明t++;
16         t++;
17     cout<<t<<endl;
18     return 0;
19 }

转载于:https://www.cnblogs.com/ECJTUACM-873284962/p/7136061.html

hihoCoder #1498 : Diligent Robots【数学】相关推荐

  1. hihoCoder #1246 : 王胖浩与环 (数学)

    题意: 有一个环形序列,可以将其切成连续的k段子序列,那么gcd( 每段子序列的和 )就是优美程度.输出n个整数,表示当k=[1, n] 时的最大优美程度. 思路: 观察一下,当切成1段的时候,gcd ...

  2. hihocoder#1369 : 网络流算法的一些小结

    一道最大流模板水题,借这道题来学习一下最大流的几个算法. 分别用Edmond-Karp,Dinic ,SAP来实现最大流算法. 从运行结过来看明显SAP+当前弧优化+gap优化速度最快. hihoco ...

  3. 紫薯第10章数学 kaungbin专题14数论基础

    杂谈 kuangbin14数论Harmonic Number LightOJ - 1234 分段打表 + 欧拉爷爷o(1).(第一次触及了欧拉常熟) 10.1.1 && 10.1.2 ...

  4. 【hihoCoder】第77周《Koch Snowflake》题目分析

    1.题目大意: 原题链接:http://hihocoder.com/contest/hiho77/problem/1 上图是著名的Koch雪花,或者叫Koch曲线.它是由一个等边三角形演变出来的.具体 ...

  5. hihoCoder 1015 (KMP模板题)

    题目链接:http://hihocoder.com/problemset/problem/1015 Time Limit:1000ms Case Time Limit:1000ms Memory Li ...

  6. 计算机图形相关资料(来自人人:数学的美学世界小站)

    做机器视觉和图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容:其二是所作工作要具备很高的实用背景.解决第一个问题的办法就是找出这个方向公认最高成就的几个超级专家(看看他们都在 ...

  7. 三年级计算机下册目录,人教版小学三年级数学教材下册目录(最新整理)

    <人教版小学三年级数学教材下册目录(最新整理)>由会员分享,可在线阅读,更多相关<人教版小学三年级数学教材下册目录(最新整理)(3页珍藏版)>请在人人文库网上搜索. 1.人教版 ...

  8. (HihoCoder - 1015)From hihoCoder

    (HihoCoder - 1015)From hihoCoder 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进. 这一天,他 ...

  9. Hihocoder 1284 机会渺茫

    http://hihocoder.com/problemset/problem/1284 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi最近在追求一名学数学的女生小 ...

  10. 群论中的拉格朗日定理(子群的阶必然能整除群阶---数学

    前言:仅个人小记.本文记录的证明逻辑上不具有流畅性,主要是在一开始不流畅,拉格朗日神乎其技地引入了一个等价关系,进而实现了整个定理的证明,目前我没能给出拉格朗日是如何想到引入该等价关系. 最后给出推论 ...

最新文章

  1. 2020卫星参数表大全_王者荣耀比较秀的名字 2020年比较骚气比较浪的王者荣耀名字大全...
  2. 用看板工具leangoo做人事招聘
  3. python代码壁纸-python实现壁纸批量下载代码实例
  4. iOS-本地推送和远程推送,常用的三方推送和常用的测试方法,推送实现和原理详解...
  5. 太骚了!Python模型完美切换SAS,还能这么玩。。
  6. [NOI2001]炮兵阵地
  7. plantuml语法_PlantUML实践 | 思维导图
  8. cacti 监控安装失败
  9. 【编程题目】12 个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,...
  10. 再谈new functionName
  11. 数据库系统概论课后习题答案(第五版 王珊、萨师煊)
  12. Vue3 JSON编辑器
  13. 红外图像特点及识别方法
  14. 手机连接ftp文件服务器,手机链接ftp服务器地址
  15. 如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
  16. 密钥mysql_MySQL加密和密钥管理
  17. 基于centos7和windows 搭建局域网wiki.js知识管理库的两种解决方案
  18. 光滑曲线_消防水泵-流量扬程性能曲线
  19. ubuntu不能访问windows中的文件
  20. Word:论文排版专题——多级列表与插入题注

热门文章

  1. Sublime Text 3在行前插入递增数字序号的方法
  2. 缓存学习总结4(分布式缓存)
  3. 微信公众平台网页授权两次重定向跳转问题
  4. 2014年东北四省赛总结
  5. 计算机配置里面没有网络选项,解决win10网络设置中没有以太网的方法
  6. throw java_THROW,JAVA的throw和throws怎么用!
  7. UCI行为识别——Activity recognition with healthy older people using a batteryless wearable sensor Data Set
  8. 如何扩展关键词,以及使用python多线程爬取bing搜索结果
  9. opencv--normalize函数详解
  10. coj 1256 天朝的单行道