B. Greg and Graph

简介: B. Greg and Graph

题目

题意

  • 输入 n(1≤n≤500) 表示 n 个点的有向完全图,然后输入 n*n 的邻接矩阵 a,其中 a[i][j] 表示 i 到 j 的边权,范围 [1,1e5](特例是 a[i][i]=0)。
  • 图的节点编号从 1 开始。
  • 然后输入 1~n 的排列,表示我要一个个地删除图上的点,每删除一个点,这个点的出边和入边都会被删除。
  • 输出 n 个数,第 i 个数表示第 i 次删除之前,所有剩余点对的最短路之和。

思路

  • Floyd
  • Floyd算法差点可以倒着a的顺序插入,这样节省了一次建图

代码

cpp

复制代码

const int N = 510;
int f[N][N];
int n;
int a[N],ans[N];
void floyd(int tar,int ed)
{
    for (int u = 0; u < n;u ++)
    {
        for (int v = 0; v < n;v ++)
        {
            f[a[u]][a[v]] = min(f[a[u]][a[v]], f[a[u]][tar] + f[tar][a[v]]);
        }
    }
}
void solve()
{
    cin >> n;
    for (int i = 0; i < n;i ++)
        for (int j = 0; j < n;j ++)
            cin >> f[i][j];
    for (int i = 0; i < n;i ++)
    {
        cin >> a[i];
        a[i]--;
    }
    reverse(a, a + n);
    for (int i = 0; i < n;i ++)
    {
        int add = a[i];
        floyd(add, i);
        int res = 0;
        for (int u = 0; u <= i;u ++)
        {
            for (int v = 0; v <= i;v ++)if(u != v)
            {
                res += f[a[u]][a[v]];
                // debug3(u, v, f[u][v]);
            }
        }
        ans[n - i - 1] = res;
    }
    for (int i = 0; i < n;i ++)
        cout << ans[i] << " ";
}



相关文章
124Echarts - 关系图(Graph Dynamic)
124Echarts - 关系图(Graph Dynamic)
60 0
|
6月前
|
存储 算法
图(graph)
图(graph)
55 0
129Echarts - 关系图(Simple Graph)
129Echarts - 关系图(Simple Graph)
48 0
126Echarts - 关系图(Graph on Cartesian)
126Echarts - 关系图(Graph on Cartesian)
31 0
127Echarts - 关系图(Graph Life Expectancy)
127Echarts - 关系图(Graph Life Expectancy)
39 0
|
机器学习/深度学习 自然语言处理 算法
SS-AGA:Multilingual Knowledge Graph Completion with Self-Supervised Adaptive Graph Alignment 论文解读
预测知识图(KG)中缺失的事实是至关重要的,因为现代知识图远未补全。由于劳动密集型的人类标签,当处理以各种语言表示的知识时,这种现象会恶化。
102 0
|
机器学习/深度学习 存储 算法
图学习初探Paddle Graph Learning 构建属于自己的图【系列三】
4.图学习初探Paddle Graph Learning 构建属于自己的图【系列三】
图学习初探Paddle Graph Learning 构建属于自己的图【系列三】
|
机器学习/深度学习 数据挖掘
|
机器学习/深度学习 分布式计算 算法
凑单算法——基于Graph Embedding的bundle mining
本文描述如何在凑单场景突破找相似、发现惊喜的同时做到成交翻倍,实现体验和数据上的双赢。
15598 0
raiden_graph
使用mermaid描述 raiden 通道 AB,正常状态 graph LR A-- 60,100,S_100 ---B 通道 AB closed graph LR A((A)) -. 60,100 .
1014 0