【BZOJ 1192】[HNOI2006]鬼谷子的钱袋
2024-10-01 13:37:40
【链接】 我是链接,点我呀:)
【题意】
在这里输入题意
【题解】
设k为最大的正整数满足
$2^0+2^1+...+2^k2^0+2^1+...+2^k$
那么只用$2^0,2^1,...2^k$和$m-(2^0+2^1+...+2^k)$这k+2个数就能表示出0..m这m+1个数字了。
(原理自己想
(不过我还不是很明白那个$m-(2^0+2^1+...+2^k)$是否会和前面的2次方数字重复
(不过因为AC了,所以肯定是不会重复了。那么就记住这个结论吧。
如果m=...
那么只用$2^0,2^1,...2^k$这k+1个数字就能表示0..m这m+1个数字了。
【代码】
#include <bits/stdc++.h>
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define all(x) x.begin(),x.end()
#define pb push_back
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
using namespace std;
const double pi = acos(-1);
const int dx[4] = {0,0,1,-1};
const int dy[4] = {1,-1,0,0};
int m;
int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
scanf("%d",&m);
int now = 1;
int cnt = 0;
while (now<=m){
cnt++;
m-=now;
now*=2;
}
if (m) cnt++;
printf("%d\n",cnt);
return 0;
}
最新文章
- iOS代码加密常用加密方式
- 捉襟见肘之UIViewAnimationOptions
- JSP 入门 HTML嵌套Java脚步 显示时间
- java web 学习 --第七天(Java三级考试)
- UML类图关系-转
- Android实例-解决虚拟键盘遮挡问题(XE8+小米2)
- Idea的Git使用
- MySQL的安装——源码方式(实验环境下测试用,真实环境请忽略此文)
- Java操作mongoDB2.6的常见API使用方法
- iOS--Swift开发中的单例设计模式
- 学习ORM框架—hibernate(三):跟踪持久化对象状态,掌握对象持久化
- 前端MVC学习笔记(二)——AngularJS验证、过滤器、指令
- 手机端的META你知道多少?
- Ubuntu16.04 中 Vscode 如何断点调试C语言程序
- ubuntu垃圾清理命令
- PDA开发数据由DB下载至PDA本地
- 条件随机场(conditional random field,CRF)模型初探
- webservice异常
- 三星笔记本进入BIOS后找不到U盘启动项/快速启动键F12没有反应
- 分布式系统消息中间件——RabbitMQ的使用进阶篇
热门文章
- BZOJ 1717 [USACO06DEC] Milk Patterns (后缀数组+二分)
- sudo日志审计
- linux下安装Tomcat和java jdk
- django-8-django模型系统
- MyEclipse 设置JSP,HTML的默认打开方式,避免出现打开后上面出现浏览器
- Virtual Box 新建一个虚拟机安装系统(补充:WIN7 64 bit 系统虚拟机无法安装 64 bit 系统问题)
- IE9以下版本兼容h5标签
- COGS——T 438. 烦人的幻灯片
- explicit的用法
- 学一下HDFS,很不错(大数据技术原理及应用)