BZOJ 1192, 鬼谷子的钱袋

Problem

传送门

Mean

将一个数字m分为几个互不相同的数字,使得由这些数字可以组成1至m的任意数字。
求最少划分为几个数字可满足要求。

Analysis

水题。
求得满足2^k>m的最小k值即可。

Code

#include<cstdio>
int m,cnt=1,t=1;
int main(){
    scanf("%d",&m);
    while((t<<=1)<=m) cnt++;
    printf("%d",cnt);
    return 0;
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010576722/article/details/54894256
文章标签: BZOJ 数学 C++
个人分类: BZOJ 数学
上一篇BZOJ 1007, 水平可见直线
下一篇BZOJ 3223, 文艺平衡树
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭