指定长度路径数

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

题目给出一个有n个节点的有向图,求该有向图中长度为k的路径条数。方便起见,节点编号为1,2,…,n,用邻接矩阵表示该有向图。该有向图的节点数不少于2并且不超过500.

例如包含两个节点的有向图,图中有两条边1 → 2 ,2 → 1 。

长度为1的路径有两条:1 → 2 和 2 →1 ;

长度为2的路径有两条:1 → 2 → 1和2 → 1 → 2 ;

偷偷告诉你也无妨,其实这个图无论k取值多少 ( k > 0 ),长度为k的路径都是2条。

Input

多组输入,每组输入第一行是有向图中节点的数量即邻接矩阵的行列数n。接下来n行n列为该图的邻接矩阵。接下来一行是一个整数k.k小于30.

Output

输出一个整数,即为图中长度为k的路径的条数。

Sample Input

3
0 1 0
0 0 1
0 0 0
2

Sample Output

1
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MA 550
int G[MA][MA], mu[MA][MA], g[MA][MA]; int main()
{
int n, m;
int i, j, k;
int num;
while(~scanf("%d", &n))
{
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf("%d", &G[i][j]);
g[i][j] = G[i][j];
}
}
scanf("%d", &m);
while(--m)
{
memset( mu, 0, sizeof(mu));
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
for(k=0; k<n; k++)
{
mu[i][j] += g[i][k] * G[k][j];
}
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
G[i][j] = mu[i][j];
}
}
}
num = 0;
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
//printf("%d ", G[i][j]);
num += G[i][j];
}//printf("\n");
}
printf("%d\n",num);
}
return 0;
}

【离散数学】SDUT OJ 指定长度路径数的更多相关文章

  1. c# 判断字符是否是全角, 获取字符串的字节数 , 获取字符串指定长度字节数的字符串

    1 Encoding.Default.GetByteCount(checkString);  =2 全角 =1 半角 /// <summary> /// 获取字符串的字节长度 /// &l ...

  2. [SQL]SUTFF内置函数的用法 (删除指定长度的字符并在指定的起始点插入另一组字符)

    STUFF 删除指定长度的字符并在指定的起始点插入另一组字符. 语法 STUFF ( character_expression , start , length , character_express ...

  3. C#利用substring按指定长度分割字符串

    这几天学习分析声音的波形数据,接收到的是十六进制的数据,需要将数据转换成十进制再绘图,这个过程涉及到字符串的分割,正好可以促进自己对C#相关知识的学习.说到分割字符串,我首先想到的是Split,但根据 ...

  4. 小白月赛13 小A的路径 (矩阵快速幂求距离为k的路径数)

    链接:https://ac.nowcoder.com/acm/contest/549/E来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  5. 【LeetCode每天一题】Unique Paths(唯一的路径数)

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below).The ...

  6. 删除log文件末尾中指定的行数

    /// <summary>        /// 删除log文件末尾中指定的行数        /// </summary>        /// <param name ...

  7. SDUT OJ 2607

    /*http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2607*/ 题目大意:给出一个字符串,求出里 ...

  8. 错误及异常处理-[PathTooLongException]指定的路径或文件名太长

    错误信息 System.IO.PathTooLongException:"指定的路径或文件名太长,或者两者都太长.完全限定文件名必须少于 260 个字符,并且目录名必须少于 248 个字符. ...

  9. hdu 3191 How Many Paths Are There (次短路径数)

    How Many Paths Are There Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java ...

随机推荐

  1. log4net 入门教程

    1.下载dll 下载地址:http://mirror.reverse.net/pub/apache/logging/log4net/binaries/ github:https://github.co ...

  2. WordPress,discuz 根据不同的入口url更换logo

    Discuz!中调用cookie的思路出来了:    设置cookie:dsetcookie('cookie名', 'cookie值', '有效时间'); 读取cookie有两种方法,第一种使用get ...

  3. 微信小程序怎么获取用户输入

    能够获取用户输入的组件,需要使用组件的属性bindchange将用户的输入内容同步到 AppService. <input id="myInput" bindchange=& ...

  4. vue.js的一些模板指令简述

    1.模板指令都是写在<template></template>html里面   v-text : value是什么就显示什么,如果value里面有html的标签,也会直接显示出 ...

  5. LoadRunner 学习(基础一)

    最近开始正式系统地学习LoadRunner11.本想在自己觉得确实学到了比较有成就感的时候再mark一下,写个博客分享.阶段性地或者在自己有所小收获的时候,做做笔记分享下也好.这次作为开篇,我想记录下 ...

  6. OpenSSH/PuTTY/SSH使用

    OpenSSH/PuTTY/SSH 常用SSH服务指令 ① 启动SSH服务的命令 service sshd start ② 停止SSH服务的命令 service sshd stop ③ 重新启动SSH ...

  7. PopupWindow简单使用(一)

    1.构造函数 //方法一:     public PopupWindow (Context context)     //方法二:     public PopupWindow(View conten ...

  8. XE下创建及调用Frame

    1.创建Form1: 2.创建FMXFrame(New -> Other->Delphi Files -> FMXFrame); // 单元名为UnitFrame,窗体名为frm  ...

  9. 用原生css实现高斯模糊、黑白等滤镜效果

    —引导— 在CSS3中,有一个强大的属性,那就是filter属性,filter顾名思义就是“滤镜”的意思,用filter属性可以让图片无需PS处理就达到一些简单的显示效果. —定义和使用— filte ...

  10. C#LIQN基础知识