IPB
ЛогинПароль:

> 

Начальные контакты ТОЛЬКО через личку!!

 
 Ответить  Открыть новую тему 
> задача "театр", требуется графическая реализация
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 78
Пол: Женский

Репутация: -  0  +


Дана задача:
Цитата
В театре N мест, пронумерованных целыми числами от 1 до N. Некоторые из зрителей опоздали на спектакль, поэтому после третьего звонка те зрители, которые имели билеты на неудобные места, пересели на более удобные. Опоздавшие зрители, которые пришли уже после третьего звонка, садились на первое попавшееся свободное место.В антракте один из опоздавших зрителей решил сесть на свое место. Если его место до этого было занято, то тот, кто там сидел, пересаживался на свое место. Если и там кто-то уже сидел, то и этот зритель также вынужден был вернуться на свое место. И так далее.Поскольку в театр попали только зрители, имевшие на руках билеты, то начавшийся в антракте процесс пересаживания зрителей обязательно заканчивался. Необходимо посчитать, сколько человек в результате такого пересаживания были вынуждены поменять на свои места.Требуется написать программу, которая вычисляет количество зрителей, поменявших свои места из-за опоздания одного зрителя.
Технические требования:
Входной файл: INPUT.TXT
Выходной файл: OUTPUT.TXT
Формат входных данных:
Входной файл INPUT.TXT состоит из трех строк. В первой строке содержится целое число N ( 1 <= N <= 30000) - количество мест в зале.
Вторая строка содержит последовательность из N целых чисел, разделенных пробелами, где первое число определяет номер места в билете у зрителя, который занял место с номером 1, второе - номер места в билете у зрителя, который занял место с номером 2, и так далее. Если место было свободно, то соответствующее число рано 0.
В третьей строке содержится одно число - номер места в билете у опоздавшего зрителя, который в антракте решил пересесть на свое место.

решение:
Program tsk_4; { "Театр" }
const NMax = 30000;
var N, k, k0, count: integer;
su: array[1..NMax] of integer;
{ su[i] - номер человека, сидящего на i-м месте }
f: text;
begin
Assign( f, 'input.txt' );
Reset ( f );
ReadLn( f, N );
for k:= 1 to N do Read( f, su[k] );
ReadLn( f );
ReadLn( f, k );
Close ( f );
k0:=k;
if su[k] = k then count := 0
else begin
count := 1;
while (su[k] <> 0) and (su[k] <> k0) do begin
{ на k-м месте сидит человек номер su[k] }
inc(count);
k := su[k];
end;
end;
Assign( f, 'output.txt' );
Rewrite( f );
WriteLn( f, count );
Close( f );
end.

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

М
Применение правильных тегов обязательно даже в Задачах на Заказ! Lapp

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


Цену может назовешь?


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


и срок


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


В силу исключительной простоты задания предлагаю цену от 4 долл (100р) и срок один день..
Triplet, если ты согласна с условиями - контактируй с одним из отметившихся выше через личные сообщения.

При добавлении дополнительных условий цена и сроки могут меняться.

Участников соглашений прошу помнить об обязательной оплате через Форум и отчисления Форуму. Спасибо.

ps
Triplet, если хочешь поучаствовать в дискуссии и разобраться, у тебя остается возможность попросить модераторов перенести тему в Задачи.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.03.2024 18:12
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name