1、实现一个函数int sign(INT32 x),对x>0返回1;x==0返回0;x<0返回-1。不允许用任何形式的判断,分支,跳转指令或语句。
(1) return x*2/(|x|+1)。
缺点是有溢出的风险,x的值不能太大。或者将X转化成64位的值来临时存储处理。
(2) return (x>0) - (x&0x80000000 == 0x800000000)。
这个依赖于bool和整形之间的转换,不知道true转换成1是不是c/c++标准定义。
2、a,b不进行比较,输出最大,最小值。
(1) int max(int a, int b) : return (a+b+abs(a-b))/2;
int min(int a, int b) : return (a+b-abs(a-b))/2;
(2) 如果ab皆为正整数的话:
max(a,b): int array[2] = {a,b}; return array[b/a];
min(a,b): int array[2] = {a,b}; return array[a/b];
3 、只允许使用一个循环先输出1至10内的奇数然后输出其中的偶数结果应该是这样的:135792468
(1) for (int i=0; i<9; i++)
{
int a = 2*i+1;
if (a <= 9 )
cout<<a%10
else
cout<<a%9
}
(2)for (int i=1; i<10; i+=2)
{
count i;
if (i==9) i = 0;
}
4、求除8余数的简化方法
a&7; 对于 b=2的冥,求a处以b的余数都可以用 a&(b-1)
2、(迅雷笔试题)迅雷进行一个活动,这个活动需要客户端访问我们服务器。但活动为了限制访问量,做了如下规定,那就是每一个帐户在3600秒内只能参加不多于5次。请实现类c_user_enabled,完成此限制功能。
类接口定义:
Class c_user_enabled
{
Public:
Bool init();
Bool is_user_enabled(string user_name);// user_name表示用户帐户标识
Bool destroy();
};
附:
需要考虑线程安全
可以使用stl.
可以使用如下的一个hash函数:
Unsigned str_hash(string str);
可以使用如下锁:
Class c_lock
{
Public:
Void lock();
Void unlock();
Private:
…;
};
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/longhuihu/archive/2010/07/19/5746224.aspx
分享到:
相关推荐
用手机怎么把图片转成EXCEL?迅捷文字识别教你转换小技巧!.pdf
下面咱们就来看看这81个Win8小技巧,相信能在你学习Windows8的道路上,助上一臂之力。 1、边角热区 新版Win8取消了开始菜单,但用鼠标点击左下角时仍可进入Metro界面,其实剩余的几个角也都有着类似功用。比如左上角...
BIM软件小技巧Revit小技巧空格键旋转构件.docx
BIM软件小技巧Revit小技巧空格键旋转构件.pdf
易捷PDF转换成Word工具是一款专业的PDF转Word工具软件,易捷pdf转word转换器能快速准确的将您PDF文档...转换小技巧:如果您需要将PDF转换成Txt也可以使用它,方法是将PDF文件转换成Word后,在Word中选择另存为Txt即可。
通俗易懂的电源转换小技巧,STM32电源转换利器
一些WINDOWS的常用快捷键和操作小技巧
4、windows 系统45个小技巧 5、个人电脑详细的安全设置方法 6、一招克死所有病毒!上网不用防火墙 7、一个免费找注册码的好方法 8、电脑使用中你必须知道的70个技巧 9、Windows XP系统优化超简单实用版 ...
AVR单片机开发9——电平翻转小技巧 https://blog.csdn.net/fengyuzhe13/article/details/127748745 AVR单片机开发10——Nrf2401 模拟spi https://blog.csdn.net/fengyuzhe13/article/details/127762535 AVR单片机...
小技巧玩转你的Windows Update功能.docx
Word排版小技巧(A4转A3).doc
本文主要汇总了一下关于快速口算转换dBm与W的小技巧,希望对你的学习有所帮助。
5个小技巧让你轻松玩转鸿蒙系统
常用代码整理: 12.判断邮箱格式是否正确的代码: //利用正则表达式验证 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";...
小技巧: 256进制下输入'a' ,'b'等字符,转换为10或16进制, 你就可以看到'a','b',等字符的ascII码,反之亦然。 4.正式版支持脱离鼠标操作 数据在输入区直接输入, 快捷键 alt +,alt -, alt *,alt / 即 + -...
怎样玩转Word2003中22个经典小技巧.doc