Предмет: Информатика, автор: Аноним

с ++
Золото
Мудрец ходит по комнате размера n×m клеток. В каждой клетке комнаты лежит заданное количество золота. Проходя по клетке мудрец забирает всё золото с неё. Зная план комнаты и маршрут мудреца, посчитайте сколько золота он собрал. В задаче не гарантируется, что мудрец не проходил по одной и той же клетке более одного раза.

Входные данные

Во входных данных описан план комнаты: сначала количество строк n, затем — количество столбцов m (1≤n≤20,1≤m≤20). Затем записано n строк по m чисел в каждой — количество килограммов золота, которое лежит в данной клетке (число от 0 до 50). Далее записано число x — сколько клеток обошел мудрец. Далее записаны координаты этих клеток (координаты клетки — это два числа: первое определяет номер строки, второе — номер столбца), верхняя левая клетка на плане имеет координаты (1,1), правая нижняя — (n,m).

Выходные данные

Выведите количество килограммов золота, которое собрал мудрец.

Примеры
Ввод
Вывод
3 3
1 2 3
4 5 6
7 8 9
5
1 1
1 2
1 1
1 2
1 1
3

Ответы

Автор ответа: LixusMay
56

Ответ:

#include <iostream>

#include <vector>

using namespace std;

int main() {

int m, n, x, y;

cin >> m >> n;

int a[m][n];

for (int i = 0; i < m; ++i) {

  for(int j = 0; j < n; ++j) {

    int v;

    cin >> v;

    a[i][j] = v;

  }

}

int d;

int value = 0;

cin >> d;

for (int i = 0; i < d; ++i) {

  cin >> x >> y;

  value += a[x - 1][y - 1];

  a[x - 1][y - 1] = 0;

  }

cout << value;

return 0;

}

Объяснение:

Считываем матрицу. потом смотрим по каким клеткам ходит мудрец и складываем значения с клеток в отдельную переменную. там, где мудрец побывал, клетку матрицы заменяем на 0.

P. s. Если помогло, жмякните на "Спасибо", пожалуйста.

Похожие вопросы
Предмет: Українська мова, автор: Creese