Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Разложение числа https://www.cyberforum.ru/ cpp-beginners/ thread529513.html
Условие Заданы три числа а, b, с. Можно ли представить число а таким образом, что а = х1 ⋅ х2 ⋅ … ⋅ хk, где b ≤ хi ≤ c и хi, а, b, с — целые числа? Лучшим считается алгоритм, находящий такое представление с наименьшим числом множителей. Предусмотреть вариант, когда такого представления не существует. Входные данные подготовлены в файле input.txt, который содержит строку, содержащую числа...
C++ Списки: что такое и с чем едят?
Сейчас тупо втыкаю в 4 часть учебника Полякова по Си. В самом начале про списки. Почему тупо-потому, что не понимаю: что такое, и зачем оно вообще надо? Может кто-нибудь доходчиво объяснит?
C++ Деревья. https://www.cyberforum.ru/ cpp-beginners/ thread529511.html
Условие Найти и удалить (правым удалением), если существует, среднюю по значению из вершин дерева, у которых количество потомков в левом поддереве отличается от количества потомков в правом поддереве наибольшим образом. Если у вершины отсутствует некоторое поддерево, то количество потомков в этом поддереве будем полагать равным 0. Входные данные tst.in содержит последовательность ключей...
C++ создание класса https://www.cyberforum.ru/ cpp-beginners/ thread529503.html
Создайте класс bMoney, в котором перегрузите арифметические операции для работы с денежным форматом. Перегрузите два оператора следующим образом: long double * bMoney //умножить число на деньги long double / bMoney //делить число на деньги Эти операции требуют наличия дружественных функций, так как справа от оператора находится объект, а слева –...
Рекурсия: сумма ряда C++
Здравствуйте. Помогите написать программу: В основном трудности возникли с Ak и Bk. Заранее благодарен.
C++ Даны натуральные числа a,b(a<= Ь). Получить все простые числа р, удовлетворяющие неравенствам a<= р<= b. Даны натуральные числа a,b(a<= Ь). Получить все простые числа р, удовлетворяющие неравенствам a<= р<= b. Решите на С++. Буду очень благодарна! https://www.cyberforum.ru/ cpp-beginners/ thread529494.html
C++ Даны целые числа р и q. Получить все делители числа q, взаимно простые с р. https://www.cyberforum.ru/ cpp-beginners/ thread529493.html
Даны целые числа р и q. Получить все делители числа q, взаимно простые с р. Решите на С++. Заранее спасибо!
C++ Даны натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых , равен m
Даны натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых , равен m Решите на С++.Буду благодарна!
C++ точка с координатами х,у. х<>0 в какой четверти координатной плоскости находится точка с координатами х,у. х<>0 https://www.cyberforum.ru/ cpp-beginners/ thread529478.html C++ Рекурсивная функция https://www.cyberforum.ru/ cpp-beginners/ thread529477.html
Помогите сделать вот такое задание
C++ Сколько надо заплатить продавцу?
в течении месяца продавец доставлял на дом 4л молока в день, в марте молоко стоило Х руб.за литр. с первого апреля цена молока увеличилась до руб.за литр сколько надо заплатить продавцу за все доставленное молоко в конце апреля?количество покупаемого молока осталось прежним Добавлено через 1 минуту в какой четверти координатной плоскости находится точка с координатами х,у. х<>0
C++ Связь массивов и указателей https://www.cyberforum.ru/ cpp-beginners/ thread529475.html
Здравствуйте! Помогите разобраться пожалуйста! Вот когда я определяю одномерный массив Type mass; Что происходит? Выделяется память достаточная для хранения n элементов типа Type и присваивается указателю mass?
Эксперт С++
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
28.03.2012, 00:30 0

Минимальное количество белых слонов - C++ - Ответ 2844208

28.03.2012, 00:30. Показов 2801. Ответов 5
Метки (Все метки)

Ответ

рекурсией можно решить эту задачу, но рекурсия является не единственным вариантом решения.
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
52
53
54
55
56
#include<stdio.h>
#include<malloc.h>
int main()
{
      freopen("in.txt","r",stdin);
  freopen("out.txt","w",stdout);
    int **a, i, j, i_st, i_end, N, M, col=0;
    struct tt{
        int x, y;
    };
    tt *Q=(tt*)malloc(500000*sizeof(tt));   
    scanf("%d %d", &N, &M);
    a=(int**)malloc(N*sizeof(int*));
    for(i=0; i<N; i++)
    {
        a[i]=(int*)malloc(M*sizeof(int));
        for(j=0; j<M; j++)
            scanf("%d", &a[i][j]);
    }
    for(i=0; i<N; i++)
        for(j=0; j<M; j++)
            if(a[i][j]==0)
            {
                i_st=0; i_end=1; Q[0].x=i; Q[0].y=j;
                a[i][j]=1; col++;
                while(i_st<i_end)
                {
                    if(Q[i_st].x>0)
                    {
                        if(Q[i_st].y>0 && a[Q[i_st].x-1][Q[i_st].y-1]==0)
                        {
                            Q[i_end].x=Q[i_st].x-1; Q[i_end++].y=Q[i_st].y-1; a[Q[i_st].x-1][Q[i_st].y-1]=1;
                        }
                        if(Q[i_st].y<M-1 && a[Q[i_st].x-1][Q[i_st].y+1]==0)
                        {
                            Q[i_end].x=Q[i_st].x-1; Q[i_end++].y=Q[i_st].y+1; a[Q[i_st].x-1][Q[i_st].y+1]=1;
                        }                       
                    }
                    if(Q[i_st].x<N-1)
                    {
                        if(Q[i_st].y>0 && a[Q[i_st].x+1][Q[i_st].y-1]==0)
                        {
                            Q[i_end].x=Q[i_st].x+1; Q[i_end++].y=Q[i_st].y-1; a[Q[i_st].x+1][Q[i_st].y-1]=1;
                        }
                        if(Q[i_st].y<M-1 && a[Q[i_st].x+1][Q[i_st].y+1]==0)
                        {
                            Q[i_end].x=Q[i_st].x+1; Q[i_end++].y=Q[i_st].y+1; a[Q[i_st].x+1][Q[i_st].y+1]=1;
                        }                       
                    }                   
                    i_st++;
                }
            }
    printf("%d", col);
 
return 0;
}


Вернуться к обсуждению:
Минимальное количество белых слонов C++
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.03.2012, 00:30
Готовые ответы и решения:

Минимальное число белых слонов
Имеется шахматная доска N × M клеток. Некоторые поля на ней заняты белыми фигурами, но не слонами...

Какое минимальное количество слонов можно расставить на шахматной доске так, чтобы они били все поле
Cлоники ограничение по времени на тест: 2 секунды ограничение по памяти на тест: 64 мегабайта...

Посчитать количество столбцов в строке, разделённых произвольным количеством белых знаков
Необходимо посчитать количество столбцов в строке, разделённых произвольным количеством белых...

Минимальное число белых слонов
Имеется шахматная доска N × M клеток. Некоторые поля на ней заняты белыми фигурами, но не слонами...

5
28.03.2012, 00:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2012, 00:30
Помогаю со студенческими работами здесь

Посчитать количество попугаев и количество слонов в отрезке [a, b]
Отрезок задается целочисленными значениями его концов a и b. «Эталоны» измерения заданы как...

Определить минимальное число белых точек
Есть черно-белое изображение. Черные точки - препятствия, по белым можно двигаться. Нужно...

Посчитать количество слонов в деревне
а сможешь полностью задачу решить? Не поленись, если знаешь это остольное раз плюнуть, у меня...

В урне 4 белых и 6 черных шаров. Не глядя берут 2. X подсчитывает количество белых шаров, Y чёрных
В урне 4 белых и 6 черных шаров. Не глядя берут 2. X подсчитывает количество белых шаров, Y...

Подсчитать на фотографии количество белых шаров. Что нужно изучить?
Никогда не программировал на С# или С++. Стоит задача подсчитать на картинке - фото (изображении на...

В урне 10 белых и 5 черных шаров. Чему равна вероятность того, что, вытянув наугад с возвращаением 14 шаров, получим белых не менее 12?
Добрый вечер господа\товарищи :) Прошу помощи в решении задачи на возвращение: В урне 10...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru