题目信息
求有向图所有顶点的出度与入度。
输入:
第一行为正整数N(0<N<=100),代表图中点的个数。
接下来N行,每行有N个数据,每个数据以空格分隔,代表邻接矩阵。
注意:
输入的都是有向图
输出:
输出N行,每行2个数字,每行格式都是:A空格B
其中A为出度,B为入度
测试样例
5
1 0 0 0 0
0 1 1 0 0
0 1 1 1 0
0 0 0 1 0
0 0 1 0 1
1 1
2 2
3 3
1 2
2 1
解答
#include <iostream>
using namespace std;
int a[1000][1000];
int du[1000][2];
int N;
int main()
{
freopen("E://test.txt", "r", stdin);
cin >> N;
for (int i = 0; i < N; i++)
{
for (int j = 0; j < N; j++)
{
cin >> a[i][j];
}
}
for (int i = 0; i < N; i++)
{
int sum = 0;
for (int j = 0; j < N; j++)
{
sum += a[i][j];
}
du[i][0] = sum;
}
for (int i = 0; i < N; i++)
{
int sum = 0;
for (int j = 0; j < N; j++)
{
sum += a[j][i];
}
du[i][1] = sum;
}
for (int i = 0; i < N; i++)
{
cout << du[i][0] << " " << du[i][1] << endl;
}
return 0;
}