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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2011, 13:31   #1
Skorpion
Новичок
Джуниор
 
Регистрация: 22.12.2011
Сообщений: 9
По умолчанию Паскаль доска

Задается шахматная доска N*M Нужно вывести максимальное количество КОНЕЙ которых можно расставить так чтоб они не билидруг друга
Формат входных данных
Первая строка входного файла содержит двацелых числа N и M (1<=N,M<=1000000)

Последний раз редактировалось Skorpion; 22.12.2011 в 13:50.
Skorpion вне форума Ответить с цитированием
Старый 22.12.2011, 14:44   #2
Skorpion
Новичок
Джуниор
 
Регистрация: 22.12.2011
Сообщений: 9
По умолчанию

помогите кто нибудь оч срочно нужно
Skorpion вне форума Ответить с цитированием
Старый 22.12.2011, 14:52   #3
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
var M,N:integer;
begin
Readln(N,M);
if (m<2) or (n<2) or ((m=2) and ( n=2))  then writeln (M*n)
else writeln ((m*n)+1) div 2);
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 22.12.2011 в 17:22.
Mad_Cat вне форума Ответить с цитированием
Старый 22.12.2011, 14:54   #4
Skorpion
Новичок
Джуниор
 
Регистрация: 22.12.2011
Сообщений: 9
По умолчанию

если не сложно можно весь код.А то я в ПАскале не силён
Skorpion вне форума Ответить с цитированием
Старый 22.12.2011, 16:30   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Skorpion,
с точки зрения Mad_Cat это и есть ВЕСЬ код!
Добавьте описание переменных и M N
и вывод результата K


Mad_Cat, а как получена данная формула, если не секрет?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.12.2011, 16:33   #6
Skorpion
Новичок
Джуниор
 
Регистрация: 22.12.2011
Сообщений: 9
По умолчанию

program zadacha;
var
а дальше как.я просто только начинаю изучать паскаль.и мне сказали до завтра сделать несколько задачь. Если кому не сложно напишите полность.Буду очень благодарен
Skorpion вне форума Ответить с цитированием
Старый 22.12.2011, 16:33   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Все давным давно выведено)
Цитата:
Мирное сосуществование коней на доске
Задача:: какое максимальное число коней можно разместить на доске размером (n х n), чтобы они не угрожали друг другу?
Решение. Для доски размером 1х1 это число равно 1, для доски 2х2 – 4, для доски 3х3 – 5. Для досок размером 4х4 и более решение можно получить, расставив коней на поля одного цвета. Если n – чЁтное число, то не важно, на какие именно поля (чЁрные или белые) ставить коней. Если же n – нечЁтное, то расставлять коней следует на те поля, число которых больше. Вышесказанное справедливо и для доски 3х3, но в этом случае имеется ещЁ одно решение – расстановка коней в форме пЛЮса. Таким образом, наибольшее количество коней, которое может мирно сосуществовать на шахматной доске размером (n х n) при n>2 равно значению (n*n)/2, округлЁнному в большую сторону до целого.

В частности, на обычную шахматную доску 8х8 можно поставить максимум 32 не бьющих друг друга коня. Невозможность расставить хотя бы на одного коня больше доказывается следующим образом. Предположим, что нам удалось поставить 33 коня так, что они не бьют друг друга. Тогда разобьЁм доску на 8 прямоугольников 4х2 клетки; по принципу Дирихле хотя бы на одном из них стоит не меньше 5 коней, но в таком случае, как нетрудно убедиться, какие-то два из них бьют друг друга. Значит, больше 32 коней на доску поставить нельзя.
ну и еще чуть
Цитата:
Максимальное количество фигур

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

Ладья простреливает все вертикали и горизонтали, поэтому максимально мы можем поставить min(M,N).

Учитывая, что ферзь ходит и как ладья, максимальное количество ферзей на доске равно максимальному количеству ладей.

Конь при своем ходе ходит на клетку противоположного цвета, поэтому максимальное количество коней на доске равно ((M*N)+1) div 2.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 22.12.2011 в 16:35.
Mad_Cat вне форума Ответить с цитированием
Старый 22.12.2011, 16:51   #8
Skorpion
Новичок
Джуниор
 
Регистрация: 22.12.2011
Сообщений: 9
По умолчанию

код сможешь написать???
очень прошу...
Skorpion вне форума Ответить с цитированием
Старый 22.12.2011, 16:55   #9
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
код сможешь написать???
уже написал
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 22.12.2011 в 17:23.
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Доска RgnRok C++ Builder 2 27.02.2011 14:54
шахматная доска revaldo666 Общие вопросы C/C++ 4 11.01.2011 11:25
Шахматная доска Настенька..Блонди Паскаль, Turbo Pascal, PascalABC.NET 2 15.05.2009 23:26
Доска объявлений solomusic PHP 1 05.08.2008 18:57