查看: 4771| 回复: 8
跳转到指定楼层
上一主题 下一主题
收起左侧

求问一道bit manipulation的题目

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
  1. /* howManyBits - return the minimum number of bits required to represent x in
  2. *             two's complement
  3. *  Examples: howManyBits(12) = 5
  4. *            howManyBits(298) = 10
  5. *            howManyBits(-5) = 4
  6. *            howManyBits(0)  = 1
  7. *            howManyBits(-1) = 1
  8. *            howManyBits(0x80000000) = 32
  9. *  Legal ops: ! ~ & ^ | + << >>
  10. *  Max ops: 90
  11. *  Rating: 4
  12. */
  13. int howManyBits(int x) {
  14.   return 0;
  15. }
复制代码
这道题想了好久也没啥思路。如果不算符号位的话会需要0-31个bits,也就是1,2,4,8,16的组合。所以1出现在某些位置的话就一定要加这五个数中的某一个。
但是然后咧。。。


上一篇:求问:美帝对于php的需求怎么样?和java比呢?
下一篇:求问scramble string和anagram的区别
🔗
pystone 2014-6-5 10:47:24 | 只看该作者
全局:
lz。。作业要自己做。。。。不过现在已经交了 可以来讨论下=。=
回复

使用道具 举报

🔗
 楼主| anonym 2014-6-5 11:36:24 | 只看该作者
全局:
pystone 发表于 2014-6-4 21:47
lz。。作业要自己做。。。。不过现在已经交了 可以来讨论下=。=

啊 我注册能进AutoLab以后就退掉了 实际上没选这课 但是可以做Lab
回复

使用道具 举报

🔗
Linzertorte 2014-6-5 12:44:07 | 只看该作者
全局:
  1. int howManyBits(int x){
  2.     unsigned mask = 1<<31;
  3.     if(!x) return 1;
  4.     int cnt = 0;
  5.     if(x&mask){
  6.         //negative
  7.         while(x&mask) cnt++, x<<=1;
  8.         cnt --;
  9.     }else{
  10.         while(!(x&mask)) cnt++, x<<=1;
  11.         cnt --;
  12.     }
  13.     return 32-cnt;
  14. }
复制代码
一亩三分地严打"顶""好贴""收藏了"之类的垃圾回复帖!被警告三次,系统会自动封杀ID!

想支持楼主,请点击帖子下方的"好苗""分享""收藏"键,酌情给楼主加大米(系统不扣你自己的分)。
积分不够看不了帖子,请参考论坛导航里的"帮助","新手提纲"里有攒积分指南
回复

使用道具 举报

🔗
 楼主| anonym 2014-6-5 12:48:09 | 只看该作者
全局:
Linzertorte 发表于 2014-6-4 23:44
一亩三分地严打"顶""好贴""收藏了"之类的垃圾回复帖!被警告三次,系统会自动封杀ID!

想支持楼主,请点 ...

哦 忘了说 不能有条件和循环
回复

使用道具 举报

🔗
zladfqrts 2014-6-5 13:38:54 | 只看该作者
全局:
还能这样?  能听课 能autolab 不算qpa 不交学费?
回复

使用道具 举报

🔗
 楼主| anonym 2014-6-5 13:53:07 | 只看该作者
全局:
jlsqsd 发表于 2014-6-5 00:38
还能这样?  能听课 能autolab 不算qpa 不交学费?

就是钻空子啦 因为AutoLab不像Blackboard 退课不会自动踢出去 CS课不少人这样干
回复

使用道具 举报

🔗
Nirosun 2014-6-5 15:16:54 | 只看该作者
全局:
原来autolab可以这么蹭,涨姿势了
二分法是个好办法,可惜我是个渣,没用好。。。
回复

使用道具 举报

🔗
pystone 2014-6-6 01:42:16 | 只看该作者
全局:
anonym 发表于 2014-6-5 11:36
啊 我注册能进AutoLab以后就退掉了 实际上没选这课 但是可以做Lab

肉疼肉好疼。。为什么不早告诉我。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表