数学笔记 2020/8/31

首先,%%

Kvein

快速幂

#include<iostream>
#include<cstdio>
using namespace std;
long long tem=1;
long long p;
long long ans=1;
long long b;
long long k;
long long power(){
    while(p){
        if(p&1){
            ans*=b;
            ans%=k;
        }
        b*=b;
        b%=k;
        p/=2;
    }
    return ans;
}
int main(){
    scanf("%lld%lld%lld",&b,&p,&k);
    printf("%lld^%lld mod %lld=",b,p,k);
    cout<<(power()+k)%k;
    return 0;
}

矩阵快速幂

#include<cstdio>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
long long n,k;
long long ans[101][101];
long long tem[101][101];
long long li[101][101];
long long mod=1000000007; 
void tim1(){
    memset(li,0,sizeof(li));
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            for(int k=1;k<=n;++k){
                li[i][j]=(li[i][j]+(tem[i][k]*ans[k][j])%mod);
                li[i][j]%=mod;
            }
        }
    }
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            ans[i][j]=li[i][j];
        }
    }
    return ;
}
void tim2(){
    memset(li,0,sizeof(li));
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            for(int k=1;k<=n;++k){
                li[i][j]=(li[i][j]+(tem[i][k]*tem[k][j])%mod);
                li[i][j]%=mod;
            }
        }
    }
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            tem[i][j]=li[i][j];
        }
    }
    return ;
}
void power() {
    while(k){
        if(k&1){
            tim1();
        }
        tim2();
        k>>=1;
    }
    return ;
}
int main(){
    scanf("%lld%lld",&n,&k);
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            scanf("%lld",&ans[i][j]);
            tem[i][j]=ans[i][j];
        }
    }
    k--;
    power();
    for(int i=1;i<=n;++i){
        for(int j=1;j<=n;++j){
            cout<<ans[i][j]<<" ";
        } 
        cout<<endl;
     } 
    return 0;
}

快速乘

捕获.PNG

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇