101227 年終紅利

今天買了兩本簡單的演算法的書
在台大對面誠品的樓上

中午忽然想到 Skyly 講到的若水堂
原本想揪團去的
可是其他人 (1 人) 想要期末考過後再去
所以國文課結束後就一個人殺去台大對面啦~~~~~

到了誠品,明明看到若水堂的招牌就在樓上
可是怎麼繞也繞不進去
先是走進誠品
發現有樓梯
然後就直達綠蓋了

=口=
等等!!不對吧!!
我是要去若水堂呀!!!
後來又下樓找其他的入口
可是因為腦包所以沒看到
就這樣又繞回了綠蓋
這次就在綠蓋搜尋往樓上的地方
沒想到……

我找到電梯欸XDDDDD
於是順利的通到了四樓
果然電梯門一打開就是一間書店(被打)
呃、果然還是不行呀(?)

……

總之裡面有很多簡體書
於是就直接朝「數理化學」區邁進啦
看到有很多有價值的書
不過原本來若水堂是要買這本

算法藝術與信息學競賽

結果後來就在裡面逛起來了XD
挑了兩本看起來算簡單的書
一本書是

ACM程序設計競賽基礎教程

另一本是

數據結構與算法

這兩本從目錄上看來都還滿簡單的
所以應該不會被棄置

還有看到有一本在講說有關印度的數學
本來想買
可是我一個小時內就把他看完了
所以就沒有買了 (那本換算起來也快要100元,用100元買一本一小時內可以看完的書沒有太大價值)
就是在說印度人速算的 12 招
其中有講說印度人有利用補數來做加減乘除
感覺速度還滿快的說 XDDD

我看的那本有分 12 式

以下先附其中八式

第一章

第一式

跟乘以 11 有關的都可以用來速算

ex.1

1
2
3
12 * 11 = 1(A)2
(A) = 1 + 2 = 3

所以 12 * 11 = 132

ex.2

1
2
3
4
5
4536 * 11 = 4(A)(B)(C)6
(A) = 4 + 5 = 9
(B) = 5 + 3 = 8
(C) = 3 + 6 = 9

所以 4536 * 11 = 49896

ex.3

1
2
3
4
789 * 11 = 7(A)(B)9
(A) = 7 + 8 = 15
(B) = 8 + 9 = 17

所以 789 * 11 = 8679 (要記得進位)

第二式

兩個數相同而且個位數為 5 就可以用

ex.1

1
2
3
4
15 * 15 = (A)(BB)
(A) = 1 * ( 1 + 1 ) = 2
(BB) = 5 * 5 = 25

所以 15 * 15 = 225

ex.2

1
2
3
4
85 * 85 = (A)(BB)
(A) = 8 * ( 8 + 1 ) = 72
(BB) = 5 * 5 = 25

所以 85 * 85 = 7225

第二式比較簡單其他留作練習吧

第三式

十位數相同,個位數加起來是 10 的就可以使用

ex.1

1
2
3
4
63 * 67 = (A)(BB)
(A) = 6 * ( 6 + 1 ) = 42
(BB) = 3 * 7 = 21

所以 63 * 67 = 4221

ex.2

1
2
3
4
28 * 22 = (A)(BB)
(A) = 2 * ( 2 + 1 ) = 6
(BB) = 8 * 2 = 16

所以 28 * 22 = 616

除此之外,本例題可以轉化成 56 * 11 使用第一式速解。

ex.3

1
2
3
4
77 * 73 = (A)(BB)
(A) = 7 * ( 7 + 1 ) = 56
(BB) = 7 * 3 = 21

所以 77 * 73 = 5621

第四式

適用在十位數相同的時候,這個步驟比較複雜

ex.1

1
2
3
4
16 * 12 = (A) + (B) (注意是相加!!)
(A) = ( 16 + 2 ) * 10 = 180
(B) = 6 * 2 = 12

所以 16 * 12 = 180 + 12 = 192

ex.2

1
2
3
4
57 * 58 = (A) + (B)
(A) = ( 57 + 8 ) * 50 = 3250
(B) = 7 * 8 = 56

所以 57 * 58 = 3250 + 56 = 3306

ex.3

1
84 * 86 = (A) + (B)

當然,這裡也是可以用第三式來解為 7224,在此示範第四式

1
2
(A) = ( 84 + 6 ) * 80 = 7200
(B) = 4 * 6 = 24

所以 84 * 86 = 7200 + 24 = 7224

ex.4 (因為比較複雜所以多示範一下!)

1
33 * 37 = (A) + (B)

像此例題可以用第一式、第三式解得 1221,在此示範第四式

1
2
(A) = ( 33 + 7 ) * 30 = 1200
(B) = 3 * 7 = 21

所以 33 * 37 = 1200 + 21 = 1221

第五式

也是第四式的延伸,如果第四式稍嫌複雜
第五式是最好的選擇

ex.1

1
2
3
4
5
16 * 12 = (A) + (B) + (C)
(A) = 10 * 10 = 100
(B) = ( 6 + 2 ) * 10 = 80
(C) = 6 * 2 = 12

所以 16 * 12 = 100 + 80 + 12 = 192

ex.2

1
2
3
4
5
57 * 58 = (A) + (B) + (C)
(A) = 50 * 50 = 2500
(B) = ( 7 + 8 ) * 50 = 750
(C) = 7 * 8 = 56

所以 57 * 58 = 2500 + 750 + 56 = 3306

ex.3

1
2
3
4
5
84 * 86 = (A) + (B) + (C)
(A) = 80 * 80 = 6400
(B) = ( 4 + 6 ) * 80 = 800
(C) = 4 * 6 = 24

所以 84 * 86 = 6400 + 800 + 24 = 7224

ex.4

1
33 * 37 = (A) + (B) + (C)

像此例題可以用第一式、第三式解得 1221,在此示範第五式

1
2
3
(A) = 30 * 30 = 900
(B) = ( 3 + 7 ) * 30 = 300
(C) = 3 * 7 = 21

所以 33 * 37 = 900 + 300 + 21 = 1221

第六式

本式擅於 100 ~ 109 的兩數相乘

ex.1

1
2
3
4
104 * 105 = (AAA)(BB)
(AAA) = 104 + 5 = 109
(BB) = 4 * 5 = 20

所以 104 * 105 = 10920

ex.2

1
2
3
4
102 * 106 = (AAA)(BB)
(AAA) = 102 + 6 = 108
(BB) = 2 * 6 = 12

所以 102 * 106 = 10812

這也比較簡單所以不囉嗦了

第二章

在這一章之前叫先說明一下補數的概念,所謂的補數就是使某個數加上另外一數之後「看起來比較整齊簡潔」的數字。

恩,我用數字說明比較模糊那就直接舉例吧, 3 的補數是 7 因為 3 + 7 = 10 ,34 的補數可以是 6 或是 66 因為 34 + 6 = 40 或是 34 + 66 = 100 ,以此類推。

以下兩式都是利用補數的概念去做加減乘除的運算。

第七式

利用補數來做加法

ex.1

1
2
3
4
48 + 16 = ???
48 + 2 = 50
16 - 2 = 14

所以 48 + 16 = 50 + 14 = 64

ex.2

1
2
3
4
379 + 483 = ???
379 + 21 = 400
483 - 21 = 462

所以 379 + 483 = 400 + 462 = 862

第八式

利用補數作減法

ex.1

1
2
3
4
5
6
52 - 17 = ???
52 = 50 + 2
17 = 20 - 3
52 - 17 = ( 50 - 20 ) + ( 2 + 3 ) = 35

ex.2

1
2
3
4
5
6
314 - 268 = ???
314 = 300 + 14
268 = 300 - 32
314 - 268 = ( 300 - 300 ) + ( 14 + 32 ) = 46

剩下四式比較複雜
而且也不好表達
改天再補

,