7 1 神奇的數學公式

2021-10-09 09:04:25 字數 855 閱讀 6064

非常有趣的公式:a - (a ⊕ x) - x = 0

其中 ⊕ 表示兩個整數按位異或(在程式設計時,a ⊕ x 被表示為 a^x )。

我們現在需要知道更多方程的關於x的非負解。

輸入的第一行包含乙個 t ,為詢問數字的個數( 1 <= t <= 1000)。

接下裡t行,每行給出乙個a ( 0 <= a <= 2^30 - 1)

對於給出的每乙個a,在一行中輸出乙個數字n,即有關x的非負解的總數。

302

1073741823

1

21073741824

note:

有關異或的解釋:

按位異或運算將兩個運算分量的對應位按位遵照以下規則進行計算:

0 ^ 0 = 0

0 ^ 1 = 1

1 ^ 0 = 1

1 ^ 1 = 0

即相應位的值相同的,結果為 0,不相同的結果為 1。

例:9 ⊕ 5 = 9^5 = 1001^0101 = 1100 = 12

hint: 當a為0時,x=0是唯一解

當a為2時,x=0 或 x=2 都是解,所以有兩組解。

簡單分析下:

題目中實則要求計算a⊕x=a-x,即當異或結果與減法結果相同時,x的非負解。

易知抑或若等於減,數x滿足:x的二進位製碼為1的那一位在a中對應的那一位中也是1,這樣1與1抑或得0,1-1也得0

即我們需計算所給a的二進位制轉化中有多少個1,然後通過排列組合求解即可

a的二進位制有n個1,對應解即為2^n個

**撈的一,此處就不展示了

Matlab數學公式

三角函式和雙曲函式 名稱含義 名稱含義 名稱含義 sin正弦 csc餘割 atanh 反雙曲正切 cos余弦 asec 反正割acoth 反雙曲餘切 tan正切 acsc 反餘割sech 雙曲正割 cot餘切 sinh 雙曲正弦 csch 雙曲餘割 asin 反正弦cosh 雙曲余弦 asech 反...

常用數學公式

常用數學公式表 公式分類 公式表示式 乘法與因式分解 a2 b2 a b a b a3 b3 a b a2 ab b2 a3 b3 a b a2 ab b2 三角不等式 a b a b a b a b a b b a b a b a b a a a 一元二次方程的解 b b2 4ac 2a b b ...

latex數學公式

最近要寫 具體數學 的讀書筆記,發現好多數學符號不會打啊qwq。大於號 geqslant geqslant 小於號 leqslant leqslant 整除 mid mid 不整除 nmid nmid 屬於 in in 連乘 prod prod 互素 bot bot 各種等價於 leftrighta...