Матрица смежности: list index out of range

Это граф: описание Это рёбра, которые я должен был ввести, но программа вывела ошибку:

0 1
1 2
2 3
3 4
4 5
5 6
5 18
6 7
6 19
7 10
7 9
8 19
8 16
9 14
9 16
10 11
11 12
11 13
12 20
13 14
14 17
14 15
15 16
16 19
17 20 
18 19

Программа в виде матрицы смежности.

n = int(input("Введите количество вершин: "))
m = int(input("Введите количество рёбер: "))

graph = [[0 for i in range(n)] for i in range(n)]
for i in range(m):
    [a, b] = input("Введите начало и конец ребра. Ввод: ").split(" ")
    a, b = int(a),int(b)
    graph[a][i] += 1
    graph[b][i] += 1

for i in range(n):
    for j in range(m):
        print(graph[i][j], end=" ")

Выводит ошибку:

Введите количество вершин: 21
Введите количество рёбер: 26
Введите начало и конец ребра. Ввод: 0 1
Введите начало и конец ребра. Ввод: 1 2
Введите начало и конец ребра. Ввод: 2 3
Введите начало и конец ребра. Ввод: 3 4
Введите начало и конец ребра. Ввод: 4 5
Введите начало и конец ребра. Ввод: 5 6
Введите начало и конец ребра. Ввод: 5 18
Введите начало и конец ребра. Ввод: 6 7
Введите начало и конец ребра. Ввод: 6 19
Введите начало и конец ребра. Ввод: 7 10
Введите начало и конец ребра. Ввод: 7 9
Введите начало и конец ребра. Ввод: 8 19
Введите начало и конец ребра. Ввод: 8 16
Введите начало и конец ребра. Ввод: 9 14
Введите начало и конец ребра. Ввод: 9 16
Введите начало и конец ребра. Ввод: 10 11
Введите начало и конец ребра. Ввод: 11 12
Введите начало и конец ребра. Ввод: 11 13
Введите начало и конец ребра. Ввод: 12 20
Введите начало и конец ребра. Ввод: 13 14
Введите начало и конец ребра. Ввод: 14 17
Введите начало и конец ребра. Ввод: 14 15
Traceback (most recent call last):
  File "c:\Users\burak\Desktop\5 laba\testing.py", line 9, in <module>
    graph[a][i] += 1
    ~~~~~~~~^^^
IndexError: list index out of range

Как это исправить?


Ответы (1 шт):

Автор решения: MBo
graph[a][b] = 1
graph[b][a] = 1
→ Ссылка