最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • 问题 Q: L19-3 拓扑序应用 - 练习3

    正文概述 网友投稿   2026-01-22 16:21:59  

    题目描述

    小机器人建议小帅和小美使用人工神经网络模型来计算,以此找到隐蔽地点。 小机器人的神经网络模型是一个有向无环图,图中一共有n个节点,p条有向边,每个节点都代表一个神经元。 从节点i到节点j的有向边的权值是wij,表示神经元i会给神经元j传递信号,并且信号强度的增幅倍数是wij,增幅倍数可能是负数。 神经元按照功能分为三种,输入层、输出层、中间层。没有其它神经元的信号传入的神经元都属于输入层,不向其它神经元传递信号的属于输出层,剩下的神经元都属于中间层。神经元i的阈值是T[i],输入层神经元的阈值都是0。 初始所有神经元的信号强度都是0,在输入层神经元被激发之后,输入层当中神经元i的信号强度是C[i],整个网络系统在信号传输的推动下进行运作。 对于输入层之外其它神经元,C[i]是神经元i接收到的信号强度,由所有传输给它的神经元的信号强度C[j]各自乘以经过的传输路径的增幅倍数wji之和,最后减去阈值T[i]计算得出。C[i]的计算过程可以表示为下面这个和式,其中j表示的是所有把信号传输给神经元i的神经元编号。 C[i]=(∑W[j][i]*C[j])-T[i] 在接收完所有信号之后,如果神经元i的信号强度C[i]大于0,那么它就会发射强度是C[i]的信号给后面与之相连的神经元。 计算程序需要计算出最终输出层中信号强度大于0的神经元状态,如果输出层的所有神经元信号强度都小于或者等于0,则输出NULL。 保证答案不超过int数据范围。

    输入

    第一行两个整数n,p。(1 <= n <= 100,1 <= p <= 200) 接下来n行,每行两个整数,第i+1行表示初始的C[i]和T[i]。 再接下来p行,每行3个整数i j w,表示存在一条i到j,权值为w的有向边。

    输出

    输出包含若干行,每行有两个整数,分别对应一个神经元的编号,及其最后的信号强度,两个整数间以空格分隔。 仅输出最后状态大于0的输出层神经元状态,并且按照编号由小到大顺序输出。 若输出层的神经元最后的信号强度都不大于0,则输出NULL。

    样例输入

    5 6
    1 0
    1 0
    0 1
    0 1
    0 1
    1 3 1
    1 4 1
    1 5 1
    2 3 1
    2 4 1
    2 5 1

    样例输出

    3 1
    4 1
    5 1
    信息学奥赛网,一个优质的源码资源平台!
    信息学奥赛网 » 问题 Q: L19-3 拓扑序应用 - 练习3