1192: [HNOI2006]鬼谷子的钱袋

Time Limit: 10 Sec Memory Limit: 162 MB

Submit: 2473 Solved: 1806

[Submit][Status][Discuss]

Description

鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各诸侯车的特派员前来向他咨询时政。有一天,他在咸阳游历的时候,朋友告诉他在咸阳最大的拍卖行(聚宝商行)将要举行一场拍卖会,其中有一件宝物引起了他极大的兴趣,那就是无字天书。但是,他的行程安排得很满,他他已经买好了去邯郸的长途马车标,不巧的是出发时间是在拍卖会快要结束的时候。于是,他决定事先做好准备,将自己的金币数好并用一个个的小钱袋装好,以便在他现有金币的支付能力下,任何数目的金币他都能用这些封闭好的小钱的组合来付账。鬼谷子也是一个非常节俭的人,他想方设法使自己在满足上述要求的前提下,所用的钱袋数最少,并且不有两个钱袋装有相同的大于1的金币数。假设他有m个金币,你能猜到他会用多少个钱袋,并且每个钱袋装多少个金币吗?

Input

包含一个整数,表示鬼谷子现有的总的金币数目m。其中,1≤m ≤1000000000。

Output

只有一个整数h,表示所用钱袋个数

Sample Input

3

Sample Output

2

此处需要一个定理(我不知道有没有这个定理,但这起码是个规律):
**2^0~2^(n-1)可以组合出【0,2^n)以内的任何整数** 所以这个题就水的一比(pi)了(有点多重背包2^n分解的影子)

代码如下:

/**************************************************************
Problem: 1192
User: DaD3zZ
Language: C++
Result: Accepted
Time:0 ms
Memory:1272 kb
****************************************************************/ #include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
using namespace std;
int i,k,n;
int main()
{
scanf("%d",&n); k=1;
for (i=1; i<=100; i++)
{
if (k>n) break;
k*=2;
}
printf("%d",i-1);
}
感谢韩大帮打代码

BZOJ-1192 鬼谷子的钱袋 2^n有关数论的更多相关文章

  1. BZOJ 1192 鬼谷子的钱袋 数论

    1192:鬼谷子的钱袋 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1926  Solved: 1417 题目连接 http://www.lydsy ...

  2. bzoj 1192 鬼谷子的钱袋 数学

    1192: [HNOI2006]鬼谷子的钱袋 Time Limit: 10 Sec  Memory Limit: 162 MB Description 鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各 ...

  3. BZOJ 1192 鬼谷子的钱袋 找规律

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1192 题目大意: 鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各诸侯车的特派员前来向 ...

  4. BZOJ 1192 鬼谷子的钱袋

    题目如下 Description 鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各诸侯车的特派员前来向他咨询时政.有一天,他在咸阳游历的时候,朋友告诉他在咸阳最大的拍卖行(聚宝商行)将要举行一场拍卖会 ...

  5. BZOJ 1192 鬼谷子的钱袋 (二进制思想)

    题解:鉴于二进制的思想来划分 #include <cstdio> int main(){ int n,d=0;scanf("%d",&n); while(1&l ...

  6. BZOJ [HNOI2006]鬼谷子的钱袋

    1192: [HNOI2006]鬼谷子的钱袋 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 5367  Solved: 3646[Submit][St ...

  7. BZOJ 1192: [HNOI2006]鬼谷子的钱袋 数学结论

    1192: [HNOI2006]鬼谷子的钱袋 Description 鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各诸侯车的特派员前来向他咨询时政.有一天,他在咸阳游历的时候,朋友告诉他在咸阳最大的 ...

  8. BZOJ 1192: [HNOI2006]鬼谷子的钱袋(新生必做的水题)

    1192: [HNOI2006]鬼谷子的钱袋 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3557  Solved: 2596[Submit][St ...

  9. BZOJ 1192:[HNOI2006]鬼谷子的钱袋(数学)

    鬼谷子的钱袋Description鬼谷子非常聪明,正因为这样,他非常繁忙,经常有各诸侯车的特派员前来向他咨询时政.有一天,他在咸阳游历的时候,朋友告诉他在咸阳最大的拍卖行(聚宝商行)将要举行一场拍卖会 ...

随机推荐

  1. MySQL数据库学习笔记(三)----基本的SQL语句

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  2. linux启动jmeter,执行./jmeter.sh报错解决方法

    1.l-bash: ./jmeter.sh: Permission denied解决办法:jmeter.sh的执行权限改改,是权限不够chmod 777 jmeter.sh 2.An error oc ...

  3. 【Java基础】java 获得本日,本周,本月的时间戳区间

    如果涉及到统计的话,可能会经常用到.很简单的基础知识. 1.getTimestampByOffsetDay public static long getTimestampByOffsetDay(int ...

  4. man命令中的文本操作

    转自:http://www.cnblogs.com/chengmo/archive/2010/10/26/1861809.html 下面说下less命令操作: 光标移动操作: e  ^E  j  ^N ...

  5. 又折腾到这么晚 , 图片Viewpager PagerIndicator,listview 和侧边栏滑动的事件处理

    代码 思路 根据坐标判断 事件是否拦截 调用 getParent().requestDisallowInterceptTouchEvent(true);方法告诉上层ViewGroup 是否拦截 返回t ...

  6. struct2cell

    函数功能:把结构体转换为元胞数组. 语法格式: c = struct2cell(s) 如果s是m*n(m行n列)的二维的结构体数组,每个结构体含有p个域,则转换得到一个p*m*n的元胞数组c. 如果s ...

  7. [CareerCup] 7.4 Implement Multiply Subtract and Divide 实现乘法减法和除法

    7.4 Write methods to implement the multiply, subtract, and divide operations for integers. Use only ...

  8. Arduino小车学习与研究博客

    Arduino小车学习与研究博客 信安系统设计基础实践模块 Arduino小车学习与研究 ================== 陈都(20135328) 余佳源(20135321) 莫凡(201352 ...

  9. IOS 应用生命周期

    *当第一次运行程序时候:(active)didFinishLaunchingWithOptions(加载完毕)->applicationDidBecomeActive(获取焦点)*当点击home ...

  10. JS的解析机制

    JS的解析机制,是JS的又一大重点知识点,在面试题中更经常出现,今天就来唠唠他们的原理.首先呢,我们在我们伟大的浏览器中,有个叫做JS解析器的东西,它专门用来读取JS,执行JS.一般情况是存在作用域就 ...