17
-》
30
,
42
,
52
,
60
,
66
,
70
,
72
23
-》
42
,
60
,
76
,
90
,
102
,
112
,
120
27
-》
50
,
72
,
92
,
110
,
126
,
140
,
152
。。。。
29
-》
54
,
78
,
100
,
120
,
115
,
138
,
154
。。。。
35
-》
66
,
96
,
124
,
150
,
174
,
196
。。。。
根据“
B
说:“本来我不知道,但是听到
A
说这句话,现在我知道了。”
”我们首先可以删除
一些重复出现的积,如
30
,
120
得到:
11
-》
18
,
24
,
28
,
17
-》
52
,
23
-》
42
,
76
,
27
-》
50
,
92
。。。
29
-》
54
,
78
。。。。
35
-》
96
,
124
。。。
由“
A
对
B
说:呵呵,我也知道了。”可以知道积是唯一的,那只有
52
了
所以得到和是
17
,积是
52
答案就是
4
和
13
。
1.3
、爸爸
,
妈妈
,
妹妹
,
小强
,
至少两个人同一生肖的概率是多少
?
1-12*11*10*9/12*12*12*12 = 1-55/96 = 41/96
1.4
某人去玩具店买小熊,单价
30
元
.
付给玩具店老板
100
元
玩具店老板没零钱
,
去水果店换了
100
元零钱回来找给那人
70
元
.
那人走后
,
水果店老板找到玩具店老板说刚才
的
100
元是假币
,
玩具店老板赔偿了水果店老板
100
元
问:玩具店老板损失了多少钱
?
答案:
70
+小熊的进价
2
请定义一个宏,比较两个数
a
、
b
的大小,不能使用大于、小于、
if
语句
答案:
#define max(a,b) ((((long)((a)-(b)))&0x80000000)?b:a)
若
a > b ,
则
a-b
的二进制最高位为
0
,与上任何数还是
0
,所以大数为
a
;
否则,
a-b
为负数,二进制最高位为
1
,与上
0x80000000
(最高位为
1
其他为
0
)之后为
1
,所以此时的大数为
b.
3
计算
a^b << 2
答案:
运算符优先级:括号,下标,
->
和
.(
成员
)
最高;
单目的比双目的高;
算术双目的比其他双目的高;
位运算
高于
关系运算;
关系运算
高于
按位运算(与,或,异或);
按位运算
高于
逻辑运算;
三目的只有一个
条件运算,低于逻辑运算;
赋值运算仅比
,
(顺序运算)高。
在此题中,位左移
"<<"
优先级高于
按位异或
"^",
所以
b
先左移两位(相当于乘以
4
),再
与
a
异或。
例如:
当
a = 6
;
b = 4
时;
则
a^b<<2 = 22
评论