avatar
j*e
2
悄悄问一下,美债降级后收益率升高,是不是买进的好机会啊?(只要不违约)
avatar
l*e
3
今天才发现。
avatar
z*e
4
hackerrank上的,觉得比较有意思,也不难
x和n是2个整数,
0 <= n <= 10^15
0 <= x <= n
两个限制条件
那么对于 n = 90000000000000
有多少个x满足上面2个条件,并且同时满足
x + n = x xor n
xor是整数对应的二进制表示进行bit异或
avatar
T*t
5
没有,check out 的最后一步,可以看到,shipping fee 没有算进去
avatar
g*l
6
不买买什么,欧洲的国债,那不是打水漂啊

【在 j**e 的大作中提到】
: 悄悄问一下,美债降级后收益率升高,是不是买进的好机会啊?(只要不违约)
avatar
d*l
7
赫赫, 这个是经典的组合健,
用惯了term到web,经常有人骂娘的

【在 l********e 的大作中提到】
: 今天才发现。
avatar
H*g
8
看起来好复杂
avatar
M*A
9
我的算进去了啊

【在 T******t 的大作中提到】
: 没有,check out 的最后一步,可以看到,shipping fee 没有算进去
avatar
j*e
10
那为什么市场都在抛售美债?
avatar
l*e
11
但是不发文时,误按就是关掉tab。
好在火狐还能找回来。

【在 d********l 的大作中提到】
: 赫赫, 这个是经典的组合健,
: 用惯了term到web,经常有人骂娘的

avatar
H*g
12
n已经比10^15小了,为啥还要比90000.。。。。小?
avatar
T*t
13
要place order 后,会看到:
我的一个order
Shipping: $4.99
Discount: -$104.99
Subtotal: $199.99
Tax: $19.00
Total: $218.99
avatar
g*l
14
这个赶上降级了么,贬值了当然甩卖了。

【在 j**e 的大作中提到】
: 那为什么市场都在抛售美债?
avatar
d*l
15
哦现在有改进了?
过去用ie,只要ctrl w就是关掉ie, 哭死的心都有

【在 l********e 的大作中提到】
: 但是不发文时,误按就是关掉tab。
: 好在火狐还能找回来。

avatar
H*g
16
哦是等于900000

【在 H********g 的大作中提到】
: n已经比10^15小了,为啥还要比90000.。。。。小?
avatar
f*l
17
how many can we order without being blocked? 3 per order is ok?
3 different billing shipping addresses but no changing ip will be ok?
avatar
j*e
18
要贬值了,那还敢买么?
avatar
l*e
19
火狐可以恢复前面关掉的TAG啊。
ctrl+shift+t
可以一直恢复很多TAB。

【在 d********l 的大作中提到】
: 哦现在有改进了?
: 过去用ie,只要ctrl w就是关掉ie, 哭死的心都有

avatar
H*g
20
那题目不就是
0<=x<=90000000000000
x + 90000000000000 = x xor 90000000000000
问有多少个x?
avatar
c*y
21
MS 在搞大倾销呢,放心买吧

【在 f*******l 的大作中提到】
: how many can we order without being blocked? 3 per order is ok?
: 3 different billing shipping addresses but no changing ip will be ok?

avatar
z*e
22
是,其实这个n可以非常大,
而且这个题目是可以手算的!当然9*10^14比较大,会比较繁琐,假如n = 9000,那么
手算就不是那么复杂了
n给的比较大主要怕你们for x = 1: n

【在 H********g 的大作中提到】
: 那题目不就是
: 0<=x<=90000000000000
: x + 90000000000000 = x xor 90000000000000
: 问有多少个x?

avatar
w*n
23
买xbox就是当苦力啊

【在 M**A 的大作中提到】
: ft
avatar
H*g
24
0+0=0=0xor0
1+0=1=1xor0
1+1=10=1xor1+10
如果n的某位上是0,它加同一位上的0或1 都等于异或0 或者1,并且不产生进位
如果n的某位上是1,它加同一位上的1或0 仍旧等于异或0或者1,但是加1之后有进位,
会翻转高位的结果。
所以当n某位有1,x的某位也有1的时候,n+x<>x xor n
而除了0之外,一个数字最高位总是1。因此符合条件的数字必然最高位的1在
90000000000的2进制数里有0的地方。一个数字的最高位在n的某位是1的地方,那它肯
定就不行,不管低位是多少。
(90000000000000)10 = (10100011101101011000010000001111010000000000000)2
所以以下数字都是不行的(x是0或者1)
10100011101101011000010000001111010000000000000
0000000000000000000000000000000001xxxxxxxxxxxxx
(有00000000000000000000000000000000001000000000000个,下同 )
00000000000000000000000000000001xxxxxxxxxxxxxxx
0000000000000000000000000000001xxxxxxxxxxxxxxxx
000000000000000000000000000001xxxxxxxxxxxxxxxxx
00000000000000000000000000001xxxxxxxxxxxxxxxxxx
0000000000000000000001xxxxxxxxxxxxxxxxxxxxxxxxx
00000000000000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
00000000000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
000000000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
000000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
00000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
0000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
(前面15行一共
00100011101101011000010000001111010000000000000个(后面15个1)
最后一行这些有
10100011101101011000010000001111010000000000000-
10000000000000000000000000000000000000000000000+1
=
00100011101101011000010000001111010000000000001个
所有这些不行的加起来总数应该是
00100011101101011000010000001111010000000000000+
00100011101101011000010000001111010000000000001
=
01000111011010110000100000011110100000000000001
所以可以的x是
10100011101101011000010000001111010000000000000-
00100011101101011000010000001111010000000000000-
00100011101101011000010000001111010000000000001
=
10000000000000000000000000000000000000000000000-
00100011101101011000010000001111010000000000001
=
01011100010010100111101111110000101111111111111
=50737488355327
avatar
z*e
25
分析的大方向差不多,细节上有点问题,结果不对

【在 H********g 的大作中提到】
: 0+0=0=0xor0
: 1+0=1=1xor0
: 1+1=10=1xor1+10
: 如果n的某位上是0,它加同一位上的0或1 都等于异或0 或者1,并且不产生进位
: 如果n的某位上是1,它加同一位上的1或0 仍旧等于异或0或者1,但是加1之后有进位,
: 会翻转高位的结果。
: 所以当n某位有1,x的某位也有1的时候,n+x<>x xor n
: 而除了0之外,一个数字最高位总是1。因此符合条件的数字必然最高位的1在
: 90000000000的2进制数里有0的地方。一个数字的最高位在n的某位是1的地方,那它肯
: 定就不行,不管低位是多少。

avatar
H*g
26
我也看出来错了,正在从新算

【在 z*********e 的大作中提到】
: 分析的大方向差不多,细节上有点问题,结果不对
avatar
z*e
27
可以先不用考虑这么的大的数字,50-100这样的都可以,容易看清楚问题

【在 H********g 的大作中提到】
: 我也看出来错了,正在从新算
avatar
H*g
28
应该这样
10100011101101011000010000001111010000000000000
第一系列
00000000000000000000000000000000001xxxxxxxxxxxx 12个x

00000000000000000000000000000000000100000000000个 =2exp11个
第二系列:
0000000000000000000000000000000010xxxxxxxxxxxxx 12个x

00000000000000000000000000000000001000000000000个 =2exp11个

第三系列
00000000000000000000000000010000x0xxxxxxxxxxxxx 13个x

00000000000000000000000000000000001000000000000 x2个 =2exp12个
第四系列
000000000000000000000000001x0000x0xxxxxxxxxxxxx 14个x

00000000000000000000000000000000001000000000000 x2x2个=2exp13个
第五系列
00000000000000000000000001xx0000x0xxxxxxxxxxxxx 15个x

00000000000000000000000000000000001000000000000 x2x2x2个 =2exp14个
所以:假如把最高位的1放在从右边数第m个0上,
它带的所有可以用的数字是2exp(m-1)个
另外还有个0也是符合条件的。
n里一共31个0。
所以
总数是
sum(1..31)(2exp (m-1))+1
=11111 11111 11111 11111 11111 11111 +1
=100000 00000 00000 00000 00000 00000
=2exp31
avatar
f*n
29
小于10^15并且最高为是0(二进制)数的个数
瞎猜的
avatar
c*t
30
Xor 就是不进位的加法。所以n转成二进制有m个0,答案是2^m

【在 H********g 的大作中提到】
: 应该这样
: 10100011101101011000010000001111010000000000000
: 第一系列
: 00000000000000000000000000000000001xxxxxxxxxxxx 12个x
: 共
: 00000000000000000000000000000000000100000000000个 =2exp11个
: 第二系列:
: 0000000000000000000000000000000010xxxxxxxxxxxxx 12个x
: 共
: 00000000000000000000000000000000001000000000000个 =2exp11个

avatar
H*g
31
你是对的。我用笨办法折腾半天就是这个答案。

【在 c*******t 的大作中提到】
: Xor 就是不进位的加法。所以n转成二进制有m个0,答案是2^m
avatar
z*e
32
我在看你的解释
结果还是不对

【在 H********g 的大作中提到】
: 应该这样
: 10100011101101011000010000001111010000000000000
: 第一系列
: 00000000000000000000000000000000001xxxxxxxxxxxx 12个x
: 共
: 00000000000000000000000000000000000100000000000个 =2exp11个
: 第二系列:
: 0000000000000000000000000000000010xxxxxxxxxxxxx 12个x
: 共
: 00000000000000000000000000000000001000000000000个 =2exp11个

avatar
H*g
33
我又改了一下,开始数个数有问题

【在 z*********e 的大作中提到】
: 我在看你的解释
: 结果还是不对

avatar
z*e
34
这个是正解,发个包子鼓励!
解释下,如果n的二进制某一位为0,那么x对应的那个digit可以是0或者1,如果n的某一
位是1,那么x对应的那一位只能为0。所以答案是2^m

【在 c*******t 的大作中提到】
: Xor 就是不进位的加法。所以n转成二进制有m个0,答案是2^m
avatar
f*n
35
也发个包子给我吗?

【在 z*********e 的大作中提到】
: 这个是正解,发个包子鼓励!
: 解释下,如果n的二进制某一位为0,那么x对应的那个digit可以是0或者1,如果n的某一
: 位是1,那么x对应的那一位只能为0。所以答案是2^m

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。