首页 > 代码库 > [思考题] [HAOI2006] [bzoj1192]鬼谷子的钱袋
[思考题] [HAOI2006] [bzoj1192]鬼谷子的钱袋
题目梗概
有m个金币,要放进n个袋子里面。要求这些袋子必须可以组成1-m这些个金币的情况下数量最少。
思考
一开始以为是递推啥的,但是转念一想应该用二进制来表示1-m这些数的,不重复而且每一个十进制数都可以用二进制数来表示。
#include <cstdio>#include <cmath>int main(){ unsigned int m; scanf("%d",&m); m = log2(m); printf("%d",m+1); return 0;}
吐槽
洛谷的题目需要输出方案,所以略坑。 因为5 按照划分应该是 1 2 2 但是不符合规则 所以需要特判 1 1 3
最后说点题外话,最近没怎么写题目了。不是因为我颓废了,而且伤病在身,没法上机。只能拿手机看看题目,想想思路。
[思考题] [HAOI2006] [bzoj1192]鬼谷子的钱袋
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。