SWUSTOJ 642 俄式乘法

2021-10-07 12:09:27 字數 783 閱讀 2929

源**

俄式乘法,又被稱為**農夫法,它是對兩個正整數相乘的非主流演算法。假設m和n是兩個正整數,我們要計算它們的積。它的主要原理如下: if n is 偶數 n m=n/2 2m else n * m=(n-1)/2 + m 該演算法只包括折半,加倍,相加等幾個簡單操作,因此實現速度非常快。具體計算如下圖所示:

兩個正整數 n,m。

n和m的乘積。

輸出整個求和表示式,運算子與數字之間用乙個空格隔開。

50 65

130 + 1040 + 2080 = 3250

#include

using

namespace std;

intcalculate

(int n,

int m)

n = n /2;

m =2* m;

} s +

= m;

cout << m <<

" "<<

"="<<

" "<< s << endl;

return0;

}int

main()

swustoj合併果子

在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過n 1次合併之後,就只剩下一堆了。多多在合併果子時總共消耗的體力等於每次合併所耗體力之和。...

swustoj 木材加工 0436

木材廠有一些原木,現在想把這些原木切割成一些長度相同的小段木頭 並不是所有原木都一定要用完,可以有剩餘 需要得到的小段的數目是給定的。當然,我們希望得到的小段越長越好,你的任務是計算能夠得到的小段木頭的最大長度。木頭長度的單位是cm。原木的長度都是正整數,我們要求切割得到的小段木頭的長度也是正整數。...

單鏈表的鏈結 swust oj

單鏈表的鏈結 1000 ms 65535 kb 2923 9780 建立長度為n的單鏈表a和長度為m的單鏈表b。程式設計實現將b表鏈結在a表的尾端,形成乙個單鏈表a。資料型別指定為字元型。輸入第一行為a表的長度n 第二行為a表中的資料元素 第三行為b表的長度m 第四行為b表中的資料元素。輸出輸出為鏈...