graph HDU - 5607(矩阵快速幂+K步可达路径)

S对偶性和N = 2⋆$$ \ mathcal {N} = {2} ^ {\ star} $$的理论(II):非简单带状代数 我们推导了一个由N = 2⋆$$ \ mathcal {N} = {2} ^ {\ star} $$超对称理论的势所满足的模块化异常方程,该非对称理论带有非简单的带节距代数,包括经典B r和 C r无限级数和特殊的F 4和G 2情况。 该方程根据S-对偶群的准模形式递归确定小质量的展开中的精确正势。 我们还讨论了这些理论在S对偶下的行为,并表明SO(2 r +1)理论的正势映射到Sp(2 r)理论的正势,反之亦然,而异常的F 4和G 2 与N = 4 $$ \ mathcal {N} = 4 $$超对称理论发生的情况类似,这些理论被映射到自身(直到根的旋转)。 这些结果扩展了对伴随论文中出现的简单群体的分析。 立即下载

graph HDU - 5607

In a directed graph which has N points and M edges,points are labled from 1 to n.At first I am at point u,at each step I will choose an output edge of the current point at uniform random,for every point Z,please output the possibility of reaching the point Z,moving exactly K
steps.
Input
the first line contains two positive intergesN,M,means the number of points and edges.

next M lines,contains two positive intergersX,Y,means an directed edge from X to Y.

next line there is an integer Q,means the number of queries.

next Q lines,each line contains two integers u,K,means the first point and number of the steps.

N≤50,M≤1000,Q≤20,u≤N,K≤109
.

Every point have at least one output edge.

Output
Q lines,each line contains N numbers,the i-th number means the possibility of reaching point i from u,moving exactly K steps.

In consideration of the precision error,we make some analyses,finding the answer can be represented as the form like XY,you only need to output X×Y109+5 mod (109+7)
.

You need to output an extra space at the end of the line,or you will get PE.

Sample Input

3 2
1 2
1 3
1
1 1

Sample Output

0 500000004 500000004 

I am now at point $1$,by one move,with a possibity of $\frac{1}{2}$ of reaching point 2,with a possibity of $\frac{1}{2}$ of reaching point 3,so we need to output 0 0.5 0.5,but as what is said above,we need to output$1*2^{10^9+5}~mod~{10^9+7}=500000004$.
分析:

实际上题目就是求K步可达路径,直接矩阵快速幂即可,只不过这里初始矩阵中存的不是0,1而是概论

即原来a[i][j]表示i可以到达j则为1,现在a[i][j]=1out[i]其中out[i]表示i点的出度,那么此时就变成了从i点到达j点的概率原来a[i][j]表示i可以到达j则为1,现在a[i][j]=1out[i]其中out[i]表示i点的出度,那么此时就变成了从i点到达j点的概率

然后直接矩阵快速幂即可,注意输出格式很无聊

最后一行有空格,而且每次询问中间隔一行

code:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod = 1e9+7;
const int N = 60;
struct Matrix{
    ll m[N][N];
};
int n,m;
ll out[N];
Matrix mul(Matrix a,Matrix b){
    Matrix ans;
    for(int i = 1; i <= n; i++){
        for(int j = 1; j <= n; j++){
            ans.m[i][j] = 0;
            for(int k = 1; k <= n; k++){
                ans.m[i][j] = (ans.m[i][j] + a.m[i][k] * b.m[k][j] % mod) % mod;
            }
        }
    }
    return ans;
}
Matrix mq_pow(Matrix a,ll b){
    Matrix ans;
    memset(ans.m,0,sizeof(ans.m));
    for(int i = 1; i <= n; i++){
        ans.m[i][i] = 1;
    }
    while(b){
        if(b & 1)
            ans = mul(ans,a);
        b >>= 1;
        a = mul(a,a);
    }
    return ans;
}
ll q_pow(ll a,ll b){
    ll ans = 1;
    while(b){
        if(b & 1)
            ans = ans * a % mod;
        b >>= 1;
        a = a * a % mod;
    }
    return ans;
}
int main(){
    while(~scanf("%d%d",&n,&m)){
        memset(out,0,sizeof(out));
        Matrix a;
        memset(a.m,0,sizeof(a.m));
        for(int i = 1; i <= m; i++){
            int x,y;
            scanf("%d%d",&x,&y);
            out[x]++;
            a.m[x][y] = 1;
        }
        for(int i = 1; i <= n; i++){
            for(int j = 1; j <= n; j++){
                if(a.m[i][j]){
                    a.m[i][j] = q_pow(out[i],mod-2);
                }
            }
        }
        int q;
        scanf("%d",&q);
        while(q--){
            int u,K;
            scanf("%d%d",&u,&K);
            Matrix ans = mq_pow(a,K);
            for(int i = 1; i <= n; i++){
                printf("%lld ",ans.m[u][i]);
            }
            puts("");
        }
    }
    return 0;
}
​ISP算法及架构分析介绍 ISP算法及架构分析介绍ISP即Image Signal Processor,是一种图像处理架构,不是我们用的下载器。ISP其实算是图像处理的一个特例,一般应用于前端设备(相对于SENSOR),从结果上看就是将RAW数据转换成压缩后的RGB(一般)数据,供后续CPU使用(识别、压缩等)。市面上很少有直接介绍ISP的书籍或者资料,今天我们主要是聊一聊ISP算法的架构,这样大... 阅读详情

相关推荐

task5:在本地搭建大模型(ollama 和 LM studio 对比),接入 openclaw

关于大模型,大家千万不要想着在本地部署,根本不可行,没有那个财力。另外大模型迭代快,不可能每周都在下载大模型。再次,还是国外的模型好用,国内的模型真的在 deepresearch 上就有很大问题,你们懂的。所以本篇文章,还是聚焦在探索层面+实操,并不会实战。

这里是 AI 食用指南,持续分享有用的AI 实操和应用! 1968

graph HDU - 5607(矩阵快速幂)

graph 题目链接:HDU - 5607 题意:一个有向图,从某一点随机出发,问k步之后到达每个点的概率分别是多少; 思路:先不考虑概率问题,只看k步能到达那些点;可以想到离散中学到的矩阵乘;对于现在把路径写成邻接矩阵的形式,那么我们得到的矩阵中dis[u][v]可以表示u-&gt;v能否直接到达;将其自乘后就可以得到2步后,dis[u][v]表示u-&gt;v能否到达;所以对于k步能否到...

Sirius_han的博客 346

线性分类器(Linear Classifier)

线性分类器 如上图所示,这是二维空间中的一个数据集,如果他正好能够被一条直线分成两类,那么我们称它为线性可分数据集,这条直线就是一个线性分类器。 在三维空间中,如果数据集线性可分,是指能够被一个平面分为两类。 在一维空间中,所有的点都在一条直线上,如果线性可分。可以理解为它们能够被一个点分开。 这里的直线、平面、点被分为决策边界。 一个 m 维空间中的数据集,如果能够被一个超平面一分为二,那么这个数据集就是线性可分的,这个超平面就是决策边界。 例如,这是二维平面上的一条直线, 它可以把平面切分成两

xuechanba的博客 1万+

hdu5607graph

graph      Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) 问题描述 在一个NN个点(标号11~nn),MM条边的有向图上,一开始我在点uu,每一步我会在当前点的出边中等概率的选一条走过去,求走了恰好KK步后走到每个点的概率. 输入描述

_zidaoziyan的博客 547

智能车图像处理去畸变+逆透视教程

图像处理,去畸变与逆透视整合

wu58430的博客 1万+

普源精电DHO系列示波器选购指南:从学生党到工程师的完整对比

本文深入评测普源精电DHO系列示波器,从DHO800到DHO4000各型号的核心参数、功能特点及适用场景进行全面对比,帮助学生党和工程师根据实际需求选择最佳型号。重点分析带宽、采样率、存储深度等关键指标,并提供实用的选购建议和进阶使用技巧,帮助用户充分发挥示波器性能。

weixin_30485379的博客 167

HDU 5607 graph(概率DP+矩阵快速幂)

Description 在一个N个点(标号1~n),M条边的有向图上,一开始我在点u,每一步我会在当前点的出边中等概率的选一条走过去,求走了恰好K步后走到每个点的概率. Input 第一行两个正整数N,M表示点数和边数. 接下来M行,每行两个正整数X,Y表示一条X向Y的一条有向边(保证没有重边和自环). 接下来一个正整数Q,表示询问个数. 接下来Q行,每行两个正整数u,K表示开始的点和

ZSQ 668

定位教程7---旋转中心标定之方法二

手算相机相对机器人关系

Quintin 6230

HDU - 5607

题目链接:HDU - 5607 首先设置一个答案矩阵,最初为走0步的时候,然后构造一个转移矩阵。 做k次矩阵乘法即可。 怎么构造转移矩阵:每个点都是由上一个点转移而来,上一个点转移到的概率为出度分之1。 AC代码: #pragma GCC optimize("-Ofast","-funroll-all-loops") #include<bits/stdc++.h> #define int long long using namespace std; const int N=55,M=1e3+

青烟绕指柔的博客 483

嵌入式开发环境Vscode开发STM32单片机程序

STM32单片机非常强大,大多数教程都是使用 keil 编译器,keil 是收费的而 gcc 是开源免费的。这里介绍一些使用 gcc +开发单片机程序的经验。(这里不解释 gcc 是什么)。

嵌入式技术开发 1843

apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】

这个是最最简单的反编译操作了。写这个教程的目的是其中很多粉丝要求出一点入门的教程。当然演示的是使用MT来操作。还有很多类似的软件可以达到目的。例如NP apltool等等或者电脑端也有很多反编译软件修改。对于玩机用户来说。也可以在系统包里直接修改一些app。

小马哥的专栏 7261

HDU 5607 graph

题意: 给定一个有向图,询问从某个点出发,走 KK 步到达其它各点的概率,表示为 x/yx/y,要求 x∗y5+109mod(7+109)x * y^{5+ 10^9} mod (7 + 10^9). N≤50,M≤1000,Q≤20,u≤N,K≤109N\le 50, M\le 1000, Q\le 20 ,u\le N, K\le 10^9 思路: 首先考虑一个一个经典的问题,就是

Step by step 701

吃透工业通信:C#工控机实现Modbus、OPC UA、Profinet、EtherCAT协议全适配

本文介绍了基于C#的工业通信协议全适配方案,采用分层架构设计实现Modbus、OPC UA、Profinet和EtherCAT四种主流协议的统一管理。核心包括:1)三层架构(应用层、抽象层、协议层)降低耦合;2)定义统一通信接口IIndustrialCommunication;3)工厂模式创建不同协议实例;4)以Modbus TCP为例展示具体实现。该方案经过实际项目验证,可简化多协议设备管理,提升工业自动化系统的开发效率。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 722

hdu 5607 graph (矩阵乘法快速幂)

  考虑一个经典的问题: 询问从某个点出发,走 k 步到达其它各点的方案数? 这个问题可以转化为矩阵相乘,所以矩阵快速幂即可解决。     本题思路:   矩阵经典问题:求从i点走k步后到达j点的方案数(mod p)。 本题输出X/Y,可以看成X是u走k步到j的方案数,Y是从u走k步的所有方案数 于是对矩阵先进行处理,即给m[i][j]乘上节点i的出度的1e9+5次方。...

weixin_34200628的博客 88

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

BestCoder Round #68 (div.2) 1003.graph (DP+矩阵快速幂)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5607 题意:给一个有向图,点数n( 解法:典型的矩阵快速幂。 初始01矩阵第 i 列所有值全部乘以 i 点出度的关于mod的逆元,可得到了初始矩阵。 初始矩阵中的第 i 列为从 i 节点出发0分钟后到达每一个点的概率。k分钟时,邻接矩阵为初始01矩阵的k次幂。输出第u列的值即可。 AC代码如

makewei13的博客 438

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

HDU 5607 graph(矩阵优化+概率DP)

该题很容易想到求概率的转移方程:用d[i][j]表示第i

AC_Arthur的专栏 1413

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

【Ybtoj 第25章例5】最短路径【矩阵快速幂】

解题思路 考虑DP,设f[i][j][k]f[i][j][k]f[i][j][k]表示从i到j走k条路的最短路径长度,易得转移方程: f[i][j][k]=min(f[i][t][k−1]+f[t][j][1])f[i][j][k]=min(f[i][t][k-1]+f[t][j][1])f[i][j][k]=min(f[i][t][k−1]+f[t][j][1])。 因为在转移时kkk只与k−1k-1k−1有关,所以可以化简掉第三维f[i][j]=min(f[i][t]+f[t][j])f[i][j...

在人间贩卖声音 351

矩阵快速幂加速最短路

对于【无环】一栏为“是”的测试点,保证给出的图是一张有向无环图,否则不对图的形态做任何保证。次魔法,使得通过下一条道路时,需要的费用变为原来的相反数,即费用从。注意:使用魔法只是改变一次的花费,而不改变一条道路自身的。最终的费用可以为负,并且一个城市可以经过多次(包括。输入的第一行有三个整数,分别代表城市数。首先有70分的做法,即使用动态规划。表示从i到j使用k次魔法时的最短路。条有向道路组成,城市与道路都从。表示边的两端,g[i].w表示边权。的单向道路,经过它需要花费。刚好为k,表示魔法的使用次数。

axibaxhf的博客 1002

矩阵快速幂求有向图路径为k的方案(每条边可以取多次)

转自:https://blog.youkuaiyun.com/qq_36124802/article/details/73202589

行云出岫 577

K步可达地方路

题目描述 小A来到了一个陌生的城镇,这个城镇与其它城镇之间构成了集群。城镇之间的路径都是单向的,而小A每一天都能由一个城镇走到另外一个城镇。小A将会连续走k天,直到抵达某个城镇。也许他并不能走到这个城镇,那么可以认为不存在这样的路径,也就是路径数为0。否则就会有若干条路径可以抵达某个城镇。现在他想知道,如果他从给定某个城市出发,k天之后到达其它城镇的路径的总和是多少。数据不保证没有重边,也就是说可能每一天从一个城镇到另外一个城镇之间会有多条路径。路径总和可能会非常大,对答案模上1000000007。 输入描

Charles6665的博客 355

HDU 6151 Party(状压DP+Hall定理)

Description 给出一个二部图,左边nn个点,标记分别为a1,a2,...,ana_1,a_2,...,a_n,右边mm个点,标记分别为b1,b2,...,bmb_1,b_2,...,b_m,给出一个n×mn\times m的矩阵表示二部图的边,11表示连边00表示不连边,qq次查询,每次查询给出一个tt,在标记被tt整除的点中选取一个非空子集,使得该子集中每一个点都属于原图中一条边,且

ZSQ 726

最短路径和矩阵乘法.

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34032779的博客 822

dls的BM算法模板(线性递推问题,解决矩阵快速幂解决不了的问题)

模板:往里面扔数就可以了(据说&gt;=8个?)%%%dls https://www.cnblogs.com/zzqsblog/p/6877339.html #include&lt;bits/stdc++.h&gt; using namespace std; #define rep(i,a,n) for (int i=a;i&lt;n;i++) #define per(i,a,n) for ...

xuanweiace的博客 1854

#208[矩阵快速幂]走楼梯

Description 已知一个楼梯有n级,小谢同学从下往上走,一步可以走一级,也可以走两级。问他走到第n级楼梯,共有多少种走法? Input 一行,一个正整数n, 1&lt;=n&lt;=40. Output 一行,一个正整数,表示走到第n级有多少种走法。 9 Sample Input 55 Sample Output Source/Category ...

2017gdgzoi999的博客 1080

矩阵快速幂+整数快速幂

嗯~ 今天总结一下快速幂的知识点 1.首先讲一下矩阵相乘 矩阵A与矩阵B相乘的前提条件:A矩阵的列必须和矩阵B的行相等。若A矩阵是m*p的矩阵,那么B矩阵必定是p*n的矩阵,最后A*B得到的矩阵C是m*n的矩阵。 其中矩阵C的第 i 行第 j 列元素是矩阵A的第i行元素与矩阵B的第j列相应元素的乘积之和。 举个栗子,如下所示: 2.整数快速幂 为了引出快速幂的好处,我们根据...

innocence的博客 441

Number Sequence (正解:矩阵快速幂)

Number Sequence A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. Given A, B, and n, you are to calculate the value of f(n). Input The...

codeswarrior的博客 3943
上一篇: So Easy! HDU - 4565(构造共轭+矩阵快速幂)
下一篇: Football Games HDU - 5873(兰道定理)
Guuuuuu老师儿
博客等级 码龄9年 259粉丝 718原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值