题意 给出一个有向图,其中每条边的边长都为1.求这个图中长度恰为 $k$ 的路劲的总数.($1 \leq n \leq 100, 1 \leq k\leq 10^9$) 分析 首先,$k=1$ 时答案就等于边数. 当 $k=2$,$G_2[i][j] = \sum_{w=1}^nG_1[i][w] \times G_1[w][j]$,相当于选取一个中间节点 $w$,只要存在合适的 $w$ ,$u,v$ 之间就存在通路. 以此类推,$G_k = G^k$ 表示恰好走 $k$ 步的情况,只需统计其中…
样例输入 4 2 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 样例输出 6 #include<cstdio> #include<vector> using namespace std; typedef vector<int> vec; typedef vector<vec> mat; int n,m; mat operator * (const mat &a,const mat &b) { mat c(n,vec(n));…
LeetCode:乘法表中的第K小的数[668] 题目描述 几乎每一个人都用 乘法表.但是你能在乘法表中快速找到第k小的数字吗? 给定高度m .宽度n 的一张 m * n的乘法表,以及正整数k,你需要返回表中第k 小的数字. 例 1: 输入: m = 3, n = 3, k = 5 输出: 3 解释: 乘法表: 1 2 3 2 4 6 3 6 9 第5小的数字是 3 (1, 2, 2, 3, 3). 例 2: 输入: m = 2, n = 3, k = 6 输出: 6 解释: 乘法表: 1 2…
一.问题描述 给出一棵n个节点的树,统计树中长度为k的路径的条数(1<=n<=50000 , 1<=k<=500). 二.解题思路 设d[i][k]表示以i为根节点长度为k的路径数目 三.代码实现 #include<stdio.h> #include<iostream> #include<algorithm> #include<cstring> #include<vector> using namespace std; +…
链接:https://ac.nowcoder.com/acm/contest/549/E来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 小A来到了一个陌生的城镇,这个城镇与其它城镇之间构成了集群.城镇之间的路径都是单向的,而小A每一天都能由一个城镇走到另外一个城镇.小A将会连续走k天,直到抵达某个城镇.也许他并不能走到这个城镇,那么可以认为不存在这样的路径,也就是路径数为0…
1.把图看成以起点为根节点的树 2.使用深度遍历算法遍历路径 3.遍历到节点为目标节点时,保存这条路径 find2PointsPath(sourceId, targetId) { const { nodesKV } = this.chart.getStore(); // 节点集合 let pathArr = []; // 保存找到的所有路径 const findPath = (sourceId, targetId, pathNodes = []) => { pathNodes = [...pat…
Nearly every one have used the Multiplication Table. But could you find out the k-th smallest number quickly from the multiplication table? Given the height m and the length n of a m * n Multiplication Table, and a positive integer k, you need to ret…
#include <iostream> #include <vector> #define MAXN 5 using namespace std; struct edge { int f,t; edge(int f, int t) :f(f), t(t) {} }; vector<edge> edges; vector<]; ]; void init(){ ; i <= MAXN; i++) vis[i] = false; } //通过缩短路径方法求解 bo…
摆花 CH Round #30 - 清明欢乐赛 背景及描述 艺术馆门前将摆出许多花,一共有n个位置排成一排,每个位置可以摆花也可以不摆花.有些花如果摆在相邻的位置(隔着一个空的位置不算相邻),就不好看了.假定每种花数量无限,求摆花的方案数. 输入格式 输入有1+m行,第一行有两个用空格隔开的正整数n.m,m表示花的种类数.接下来的m行,每行有m个字符1或0,若第i行第j列为1,则表示第i种花和第j种花不能排在相邻的位置,输入保证对称.(提示:同一种花可能不能排在相邻位置). 输出格式 输出只有一…
▶ 矩阵乘法,按照书里的内容进行了几方面的优化,包括局部内存,矢量数据类型,寄存器,流水线等. ● 最直接的乘法.调用时 main.c 中使用 size_t globalSize[] = { rowA, colB }, localSize[] = { , }; .rowA 蕴含在 get_global_id(0) 中了,不再出现在函数中,后面的几种方法也如此. // multiply.cl __kernel void multiply01(__global float *inputA, __gl…