Links

洛谷_P2579[ZJOI2005]沼泽鳄鱼
SSL_P2511沼泽鳄鱼

居然有点想接触一下鳄鱼这种生物…


题目



由于鳄鱼的活动周期只有2,3,4。
所以很容易得到一个为期12的大周期。
于是我们可以先得出大周期矩阵。先用单位矩阵乘上k/12个。
然后再一个个处理状态,分别乘上。

我们设矩阵 a[i][j] 为 从i点走到j点的方案数。
这样,两个矩阵相乘便可以得到下一个单位时间的矩阵。

我们便可以构建12个状态的矩阵,将鳄鱼会出现的位置填掉。

注意点和时间都是从0开始的,由于矩阵乘法定义方面我用了之前的代码,所以输入的时候便处理了一下。


Code

#include<cstdio>int n, m, end, start, k, t, x, y, nfish, pst[10];
struct asdf{int n, m;int jz[71][71];
} E,a,A[15],K; asdf operator *(asdf aa, asdf bb){  //定义矩阵乘法asdf cc;cc.n = aa.n; cc.m = bb.m;for(int i = 1; i <= cc.n; ++i)for(int j = 1 ;j <= cc.m; ++j)cc.jz[i][j] = 0;for(int l = 1; l <= aa.m; ++l)for(int i = 1; i <= cc.n; ++i)for(int j = 1; j <= cc.m; ++j)cc.jz[i][j] = (cc.jz[i][j] + aa.jz[i][l] * bb.jz[l][j] % 10000)% 10000;return cc;
}asdf ksm(int now){  //构建出来的矩阵的快速幂asdf ll = E;now--;while(now>0){if(now & 1) ll = ll * E;E = E * E;now >>= 1;}return ll;
} int main(){scanf("%d%d%d%d%d", &n, &m, &start, &end, &k);++start; ++end; a.n = a.m = n; E.n = E.m = n;for(int i = 1; i <= m; ++i){scanf("%d%d", &x, &y);++x; ++y;    //因为点从0开始a.jz[x][y] = a.jz[y][x] = 1;  //这条路可以走}scanf("%d", &nfish);for(int i = 1; i <= 12; ++i){A[i] = a;  //初始值A[i].n = A[i].m = n;} for(int i = 1; i <= n; ++i){  //单位矩阵for(int j = 1; j <= n; ++j)E.jz[i][j] = 0;E.jz[i][i] = 1;}for(int i = 1; i <= nfish; ++i){scanf("%d",&t);for(int i = 0; i < t; ++i){scanf("%d", &pst[i]);  //位置,position(雾 ++pst[i];}for(int j = 1; j <= 12; ++j)  //第j周期for(int l = 1; l <= n; ++l) //所有点都不能到鳄鱼出现的点A[j].jz[l][pst[j%t]] = 0;  }if(k >= 12){   //计算答案for(int i = 1; i <= 12; ++i) E = E * A[i];  //乘大周期K = ksm(k/12);}else K = E;for(int i = 1; i <= k % 12; ++i)   //周期内。K = K * A[i];printf("%d",K.jz[start][end]);  //输出
}

【邻接矩阵乘法】沼泽鳄鱼相关推荐

  1. 异配图神经网络——Graph Transformer Networks

    一.论文概述 作者提出了Graph Transformer Network (GTN)用来在异配图(heterogeneous graph)上学习节点表示.通过Graph Transformer层,模 ...

  2. 【论文分享】Learning Graphs for Knowledge Transfer with Limited Labels

    [CVPR2021]有限标签知识转移的学习图 以下是全文翻译,如有问题,请批评指正. 摘要 固定输入图是利用图卷积网络 (GCN) 进行知识转移的方法的支柱.标准范式是利用输入图中的关系,使用 GCN ...

  3. 沼泽鳄鱼_SSL2511_矩阵乘法

    沼泽鳄鱼 [题目描述] 潘塔纳尔沼泽地号称世界上最大的一块湿地,它地位于巴西中部马托格罗索州的南部地区.每当雨季来临,这里碧波荡漾.生机盎然,引来不少游客. 为了让游玩更有情趣,人们在池塘的中央建设了 ...

  4. 矩阵乘法 x 图的邻接矩阵

    邻接矩阵是一种用矩阵形式表示图的方法 那么如果用图的邻接矩阵作矩阵乘法 会有什么神奇的性质呢 我们假设一个N个结点的无向图 我们用G[u][v]=G[v][u]=1G[u][v]=G[v][u]=1G ...

  5. BZOJ 1898: [Zjoi2005]Swamp 沼泽鳄鱼 [矩阵乘法]

    1898: [Zjoi2005]Swamp 沼泽鳄鱼 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1082  Solved: 602 [Submit] ...

  6. P2579,jzoj2288-[ZJOI2005]沼泽鳄鱼【矩阵乘法】

    正题 题目链接:https://www.luogu.org/problemnew/show/P2579 题目大意 一张无向图,一个起点一个终点. 有食人鱼,在若干个点之间有周期的移动,周期为222或3 ...

  7. 【矩阵乘法】沼泽鳄鱼(ssl 2511)

    沼泽鳄鱼 ssl 2511 题目大意 给你一个无向图,有一些鳄鱼有周期性地在这个图中走(鳄鱼不用沿着边走,周期为2或3或4),问你从初始点走到最终点走k个单位时间,不在点和边上停下,不在同一时间和鳄鱼 ...

  8. 【矩阵乘法】沼泽鳄鱼

    小目录 链接 题目描述 样例输入 样例输出 思路 代码 链接 SSL 2511 题目描述 一个池塘,一些鳄鱼,鳄鱼有周期(2≤周期≤42\leq周期\leq42≤周期≤4)的运动路线,你要从某个点恰好 ...

  9. 十个利用矩阵乘法解决的经典题目

    出自matrix67.com 好像目前还没有这方面题目的总结.这几天连续看到四个问这类题目的人,今天在这里简单写一下.这里我们不介绍其它有关矩阵的知识,只介绍矩阵乘法和相关性质.     不要以为数学 ...

最新文章

  1. 问题 1: 区间交集
  2. 手把手教你java快速过滤关键词
  3. stm32l0的停止模式怎么唤醒_手把手教你怎么利用旧电脑搭建NAS组建自己的黑群晖...
  4. 图片圆角边框自适应宽高(深夜原创)
  5. 微信公众号的文章中添加历史文章链接
  6. noip2012借教室
  7. flume1.6 + syslogtcp + kafka 日志采集(二)
  8. ABAP术语-Business Components
  9. 声音存储空间计算公式_音频文件存储容量计算
  10. 加拿大移民-雇主担保移民政策解读
  11. qq音乐服务器的位置,QQ音乐的歌曲真实地址解析
  12. 谷歌浏览器设置默认搜索引擎
  13. 最近打算更新一篇图片上传的文档!(一直更新得比较缓慢)
  14. 视图的作用是什么?有哪些好处?(面试题)
  15. 激活神器!KMSpico v10.2.0 正式版本
  16. 江南style印证法国大预言家诺查丹玛斯世界末日预言?
  17. (知乎)你是如何变的自律的
  18. matlab simulink波特图,用simulink画波特图
  19. Go 中的循环依赖检测工具 —— go-cyclic
  20. html相关游戏逆ryona,横板游戏ryona | 手游网游页游攻略大全

热门文章

  1. review代码从哪些角度_转载:CodeReview正确的姿势是什么?
  2. 广度优先搜索算法的典型应用——消灭小星星游戏的核心代码实现与解析
  3. 网上的打印店能打印图书吗?
  4. 使用minikube快速部署k8s集群
  5. 【SDUT第11周周赛Problem A】SDUT2576——Queen Collisions
  6. ubantu下QT连接数据库mysql
  7. 应聘Java笔试时可能出现问题库及其答案(最全版)
  8. Qt启动进程ping网址
  9. DDSM+RetinaNet数据处理进展
  10. ShaderJoy —— 用 Shader 绘制一只可爱的 “小挠斧” (详细版)【GLSL】