Выбрать соревнование | Задачи | Послать решение | Результаты проверки | Статистика по задачам | Вопросы и ответы | Результаты соревнования | Состояние сервера | Изменить данные | Управление командой | Помощь |
01/09/2007 | Алгоритмы и структуры данных. Полиномы и матрицы (C) |
Ограничения: время – 400ms/800ms, память – 128MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Определить методы insert
и +=
для разреженной матрицы.
Для insert
предполагается, что элемента i,j не существует, добавление выполняется в порядке увеличения j.
class SparseMatrix {
int n,m;
vector<list<pair<int,double>>> data;
public:
SparseMatrix(int n, int m):n(n),m(m),data(n) {}
pair<int,int> size()const {return {n,m};}
void insert(int i, int j, double v);
SparseMatrix & operator+=(const SparseMatrix& b);
};