Помогите студенту закрыть долги — решите задачу о симметричной матрице

Будет полезно любителям алгоритмов и начинающим разработчикам.

Помогите студенту закрыть долги — решите задачу о симметричной матрице

Условие

Студенту Алеше пообещали, что закроют долги только в том случае, если тот займет призовое место в олимпиаде по спортивному программированию. Они наверняка это сделали с издевкой, но нашему герою больше ничего не остается. В назначенный преподавателем день Алеша пришел на олимпиаду, уселся за парту, открыл первое задание и увидел матрицу.

Помогите студенту закрыть долги — решите задачу о симметричной матрице

«При чем здесь судоку?», — подумал герой и уже было испугался, но решил прочитать условие.

<i>«Судоку», которая испугала Алешу.</i>
«Судоку», которая испугала Алешу.

Из условия: нужно написать программу, которая заполнит массив размерности NxN (1 < N <= 100) по правилу на картинке. Кажется, что все довольно просто: сколько матрицу не транспонируй, «картина» не изменится. Да и формул здесь никаких знать не надо. Или надо? Алеша без проблем бы решил задачу, если бы не прогуливал пары.

Задача

Вы — друг Алексея, который пришел на олимпиаду за компанию. Помогите же решить герою задачу и построить симметричную матрицу — тогда он, возможно, не будет отчислен с курса и угостит вас шавермой.

Помогите студенту закрыть долги — решите задачу о симметричной матрице

Как вы подойдете к решению задачи? Попробуйте написать код алгоритма на Python — Алеша ничего кроме него не знает.

Поделитесь размышлениями в комментариях. А затем посмотрите решение задачи в Академии Selectel.

8
3
6 комментариев