多数の剰余乗算

2020年2月22日午後11時18分45秒

問題の説明

(NUM1 * NUM2)%MOD値、注意NUM1 * NUM2オーバーフローを解決します。

問題解決

最も単純なアイデアは再び歩くことですが、時間外!

INTのMUL(INT NUM1、INT NUM2、INT MOD){
    int型のres = 0;
    {(I ++; I <NUM2 iが0 = INT)のために
        RES =(RES + NUM1)%のMOD。
    }
    解像度を返します。    
}

使用クイック法とは、はるかに高速になります!

INT qmul(INT NUM1、INT NUM2、int型MOD){
    int型のres = 0;
    一方、(NUM2!= 0){
        もし((num2の&1)!= 0){
            RES =(RES + NUM1)%のMOD。
        }
        RES = RES * 2%のMOD。
        num2の>> = 1;
    }
    リターンRES  
}

  

おすすめ

転載: www.cnblogs.com/hyserendipity/p/12348066.html