Форум программистов, компьютерный форум CyberForum.ru

Найти площадь сарая - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сложение дробей. http://www.cyberforum.ru/cpp-beginners/thread292781.html
Я хочу сложить массив дробей. Числитель у меня один массив а знаменательль другой массив. Если бы у меня небыло дробей можно было бы просто написать sum+=a; в цыкле.или sum=sum+a; А тут я незнаю как напимать функцию сложения. Помогите а то следующая неделя зачётная а я с этим заданием не как не разберусь.
C++ Вывести на экран шестнадцатеричное представление натурального числа Всем доброго времени суток. Задание: Вывести на экран шестнадцатеричное представление данного натурального числа. Сама рекурсия не вызывает проблем. Я считаю остаток о деления на 16 и целую часть. Когда целое деление невозможно рекурсия прекращается и тут возникает вопрос, как мне вытащить значения остатков от деления из стека? ведь у меня по сути есть только последнее значение. МАссивом... http://www.cyberforum.ru/cpp-beginners/thread292771.html
перечисляемый тип C++
планеты=(меркурий,венера,земля,марс,юпитер,сатурн,уран,нептун,плутон); определить:пленету,ближайщую к солнцу;планету следующую зва ближайщей к солнцу;порядковый номер планеты земля от солнца;соседей планеты земля;прекдпоследнюю и последнюю планету от солнца.
C++ Разработать алгоритм численного решения СЛАУ методом верхней релаксации
Помогите пожалуйста курсач горит (:ireful: Разработать алгоритм численного решения cистема линейных алгебраических уравнений методом верхней релаксации кто чем сможет помогите ..............
C++ Структуры. Сделал http://www.cyberforum.ru/cpp-beginners/thread292733.html
Сделал сам задачку, работает правильно, но нужно было через структуры, а я не понял как. #include <iostream> #include <fstream> #include <string> using namespace std; int main() { ifstream fin("input.txt"); ofstream fout("output.txt");
C++ Найти максимально возможную площадь сарая и где он может размещаться. Фермер хочет построить на своей земле как можно больший по площади сарай. Но на его участке есть деревья и хоз. постройки, которые он не хочет никуда переносить. Для простоты представим форму сеткой размера MxN. Каждое из деревьев и построек размещается в одном или нескольких узлах сетки. Прямоугольный сарай не должен ни с чем соприкасаться (т.е. в соседних с ним узлах сетки не может ничего... подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2913 / 1342 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
12.05.2011, 08:47     Найти площадь сарая
Прямой перебор.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <cstdlib>
#include <ctime>
#include <cstdio>
 
int TestRectangle(bool **array,
                   size_t i_begin, size_t j_begin,
                   size_t i_end, size_t j_end) {
  for (size_t i = i_begin; i < i_end; ++i)
    for (size_t j = j_begin; j < j_end; ++j)
      if (array[i][j])
        return -1;
  return ((i_end - i_begin) * (j_end - j_begin));
}
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
  size_t farm_width = 10;
  size_t farm_height = 10;
  bool **array = new bool*[farm_height];
  for (size_t i = 0; i < farm_height; ++i) {
    array[i] = new bool[farm_width];
    for (size_t j = 0; j < farm_width; ++j)
      printf("%2d", array[i][j] = rand() % 2);
    printf("\n");
  }
 
  size_t max_i_begin = 0, max_j_begin = 0, max_i_end = 0, max_j_end = 0;
  int max_area = 1;
  for (size_t i_begin = 0; i_begin < farm_height; ++i_begin)
    for (size_t j_begin = 0; j_begin < farm_width; ++j_begin)
      for (size_t i_end = i_begin; i_end <= farm_height; ++i_end)
        for (size_t j_end = j_begin; j_end <= farm_width; ++j_end) {
          int this_area = TestRectangle(array,
                          i_begin, j_begin, i_end, j_end);
          if (this_area > max_area) {
            max_area = this_area;
            max_i_begin = i_begin;
            max_i_end = i_end;
            max_j_begin = j_begin;
            max_j_end = j_end;
          }
        }
 
  printf("Max area: %d. (%d, %d) - (%d, %d) [(y1, x1) - (y2 - x2)]\n",
         max_area, max_i_begin + 1, max_j_begin + 1, max_i_end, max_j_end);
 
  for (size_t i = 0; i < farm_height; ++i)
    delete [] array[i];
  delete [] array;
  return 0;
}
 
Текущее время: 15:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru