a b c 小的技巧

2021-09-09 03:15:01 字數 596 閱讀 3966

(a*b)%c這個問題看上去好簡單啊。

當然我們不是來說這麼簡單的問題了。你想一想,我們會不會遇到這種情況,a是__int64 ,b也是__int64 當兩個數足夠大的時候我們直接相乘的就會出現__int64越界的情況,結果就會錯誤。

所以我們今天記錄一下解決這樣的問題的方法。不要讓這些小的問題妨礙我們來做大的問題。

這裡用到了2進製數,和位運算。當然不是轉化。僅僅要你會能理解即可

我們先來這樣處理。

1。我們分別將a,b對c取模。

2。這裡不會的看一下有關位運算的知識。這裡我也不知道該怎麼說了,先看看程式吧。我把程式中的**凝視加的好好的。

__int64 mult_mod(__int64 a,__int64 b,__int64 c)

a<<=1;a%=c;//a隨著b中二進位制位數而擴大每次擴大兩倍。

b>>=1;//b來縮小兩倍 去掉最後一位 由於當前最後一位我們用完了,

}return ret;

}

好了!

這個會二進位制的應該一看就懂,不會的大概不好理解,我的表達能力有限,僅僅能這樣了。

感謝自己堅持。

智慧型ABC輸入法超酷技巧

v 的妙用 用智慧型abc輸入含有英文的中文語句時,使用ctrl space切換中英文輸入狀態十分麻煩。其實智慧型abc在輸入拼音的過程中,如果需要輸入英文,可以不必切換到英文方式。鍵入 v 再輸入想輸入的英文,按空格鍵,英文本母就會出現,而 v 不會顯現出來。比如輸入 venglish 按空格,就...

Python的冷技巧小技巧

記得剛開始工作的時候,老大給我們上 c 基礎課,告訴我們字串字面量可以換行 如下 感覺真是如夢如幻。python view plain copy include int main int argc,char argv 輸出 plain view plain copy hello world.後來在寫...

matlab小技巧與verilog小技巧

注釋 選中 ctrl r 取消注釋 選中 ctrl t 採用中括號,可以將兩組資料進行拼接,由於採用dec2bin是不能轉換負數的,這一點要注意了,那麼就需要表示負數的補碼形式,補碼形式很簡單,就是判斷某個數是否小於0,小於0的數就加上2的n次方,這樣既可轉換為無符號的十進位制,再將其十進位製用de...