Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.02.2010, 02:53   #1
grimm_jow
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 25
Восклицание Коменты!

Дана доска N*M, в каждой из её клеток лежит некое кол-во золотых монет.
Начинает игрок в левом нижнем углу доски. Нужно достичь верхнего правого угла, собрав максимум монет. Движение только вверх и вправо.


Нашел рабочий код, пожалуйсто поставьте коменты к каждой строчке не могу разобратся как оно работается ?
еще как бы желательно ето все дело в Qt затолкать

Код:
#include <cstdio>
#include <algorithm>
using namespace std;
int a[30][30], n, m;
int main() {
   scanf(" %d %d", &n, &m);
   for(int i = 0; i < n; i++)
      for(int j = 0; j < m; j++)
         scanf(" %d", &a[i][j]);
   for(int i = 1; i < m; i++) a[0][i] += a[0][i - 1];
   for(int i = 1; i < n; i++) a[i][0] += a[i - 1][0];
   for(int i = 1; i < n; i++)
      for(int j = 1; j < m; j++)
         a[i][j] += min(a[i - 1][j], a[i][j - 1]);
   printf("%d", a[n - 1][m - 1]);
   return 0;
}

Последний раз редактировалось Stilet; 05.02.2010 в 08:02.
grimm_jow вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц