АВТ
Language: Russian
English

Remote Training on Programming

Problems Online status Contests
News FAQ E-learning
For authors:
Register  ||  Login
 
Hello, Guest! Please login or register.

2192. Matrix

Time Limit: 1 seconds
Memory Limit:262144KB
Points:100
View Problem Statistics Submit Problem added debug

Реализуйте класс Matrix на языке Python. Он должен содержать:

  • Конструктор от списка списков. Гарантируется, что списки состоят из чисел, не пусты и все имеют одинаковый размер. Конструктор должен копировать содержимое списка списков, т. е. при изменении списков, от которых была сконструирована матрица, содержимое матрицы изменяться не должно.
  • Метод __str__, переводящий матрицу в строку. При этом элементы внутри одной строки должны быть разделены знаками табуляции, а строки — переносами строк. После каждой строки не должно быть символа табуляции и в конце не должно быть переноса строки.
  • Метод size без аргументов, возвращающий кортеж вида (число строк, число столбцов).

Примеры

Входные данные
# Task 1 check 1
m = Matrix([[1, 0], [0, 1]])
print(m)
m = Matrix([[2, 0, 0], [0, 1, 10000]])
print(m)
m = Matrix([[-10, 20, 50, 2443], [-5235, 12, 4324, 4234]])
print(m)
Выходные данные
1  0
0  1
2  0  0
0  1  10000
-10  20  50  2443
-5235  12  4324  4234
Входные данные
m1 = Matrix([[1, 0, 0], [1, 1, 1], [0, 0, 0]])
m2 = Matrix([[1, 0, 0], [1, 1, 1], [0, 0, 0]])
print(str(m1) == str(m2))
Выходные данные
True
Входные данные
# Task 1 check 3
m = Matrix([[1, 1, 1], [0, 100, 10]])
print(str(m) == '1\t1\t1\n0\t100\t10')
Выходные данные
True

Примечание

На проверку вы должны сдать только файл, содержащий описание класса и одну строку вне класса (в качестве основной программы):

exec(stdin.read())

И еще одну строку в начале файла:

from sys import stdin

Для тестирования класса вы можете вместо строки exec(stdin.read()) вставлять код из примеров или писать свой код.


View Problem Statistics Submit Problem discussion Author/source:
Sorted Problems / Python / OOP in Python /
2192. 2193. B - Add and Multiply 2194. C - Errors and Transposition 2195. D - Multiplication
time generating 0.093 sec.
© Copyright VSU, AVT, Nosov D.A., Andrianov I.A.