zoukankan      html  css  js  c++  java
  • 数学笔记 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

  • 相关阅读:
    python-day8(正式学习)
    Bug快到碗里来
    python-day7(正式学习)
    python-day6(正式学习)
    python-day5(正式学习)
    python-day4(正式学习)
    Django中间件
    cookie和session
    分页器,form组件的使用
    orm常用字段和数据库优化查询
  • 原文地址:https://www.cnblogs.com/For-Miku/p/13592002.html
Copyright © 2011-2022 走看看