Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Bohes_
4 / 4 / 1
Регистрация: 18.06.2013
Сообщений: 51
#1

Задача Очередь - C++

07.08.2013, 03:06. Просмотров 2273. Ответов 4
Метки нет (Все метки)

Очередь
(Время: 1 сек. Память: 16 Мб Сложность: 20%)
Студент Василий живет в общежитии. Отделение банка, в котором он производит оплату за проживание, имеет всего две кассы, поэтому почти всегда длинная очередь к ним. Первая касса открывается в 8.00, вторая – в 8.05. Последний клиент будет принят в 20.00. Очередь единая, и очередной клиент обслуживается, как только освобождается одна из касс. На обслуживание одного клиента уходит ровно 10 минут. Василий приходит ровно в 8.00 и видит, сколько человек стоит перед ним. Требуется определить, сколько времени ему придется простоять в очереди, и вообще обслужат ли его сегодня.

Входные данные

Входной файл INPUT.TXT содержит единственное натурально число K – номер Василия в очереди (K < 250).

Выходные данные

В выходной файл OUTPUT.TXT выводится строка «NO», если Василий сегодня заплатить уже не успеет, и время его ожидания (в формате «X Y», где X – количество целых часов, которые простоит в очереди Василий, и Y – количество минут), если все же успеет заплатить.
Почему мое решение выдает иногда неверный ответ?
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <fstream>
int main()
{
    int a;
    std::fstream f("input.txt");
    std::ofstream o("output.txt");
    f >>a;
    if (a > 145)
        o<<"No"; else {
    a = 5*(a-1);
    
    o<<a/60<<' '<<a%60;}
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2013, 03:06
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Задача Очередь (C++):

Задача на очередь (вывод сообщения, что очередь пуста)
Доброго дня! Есть задачка на очередь, которая работает нормально, только надо добавить код, чтобы выводил сообщение, что очередь пуста.....

Очередь (задача из Лафоре)
Задача 9 из Лафоре: Надо написать класс queue, имеющий два метода: put() для помещения элемента в очередь и get() для извлечения элемента...

Исправление fillMaze (задача на алгоритм Ли и очередь)
Имеется задача про нахождение кратчайшего пути в лабиринте до цели. В fillMaze используется алгоритм Ли. Также для решения задачи...

Очередь целых чисел, генератор случайного числа, и задача
Помогите, пожалуйста, с задачей! Для тех, кто в этом хорошо разбирается, я уверен, что эта задача не заберет много времени, плюс жизнь мою...

Задача по STL (Создать объект-контейнер, очередь с приоритетом, заполнить ее данными, тип char)
Помогите,пожалуйста, заранее спасибо)) Вот задание: 1. Создать объект-контейнер, очередь с приоритетом, заполнить ее данными, тип...

Очередь (сделать очередь, чтобы добавляло, удаляло, читало. Не STL.)
Помогите пожалуйста написать очередь. Есть Температура double и ее тип int ну и нужно сделать очередь, чтобы добавляло, удаляло, читало....

4
AntonChik
1085 / 583 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 06:52 #2
Цитата Сообщение от Bohes_ Посмотреть сообщение
Почему мое решение выдает иногда неверный ответ?

Не по теме:

кассирша выбегает покурить



а почему у вас 145 а не 137?
0
Bohes_
4 / 4 / 1
Регистрация: 18.06.2013
Сообщений: 51
07.08.2013, 07:07  [ТС] #3
Рабочий день---12 часов=720минут. Каждые 5 минут освобождается касса:720/5 = 144.

Добавлено через 2 минуты
Но так как первый человек ждет 0 минут, получается максимальная очередь за день---145

Добавлено через 3 минуты
Вот эта задача на сайте проверяющей системы
0
AntonChik
1085 / 583 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 07:10 #4
Цитата Сообщение от Bohes_ Посмотреть сообщение
http://********/index.asp?main=task&id_task=511
Задача №0 не найдена!
тогда уж 143, последнего вторая касса не успеет обслужить
0
Bohes_
4 / 4 / 1
Регистрация: 18.06.2013
Сообщений: 51
07.08.2013, 07:14  [ТС] #5
Цитата Сообщение от AntonChik Посмотреть сообщение
тогда уж 143, последнего вторая касса не успеет обслужить
Вы можете найти задачу под номером 511


Если if (a > 145) превратить a>=145, то вообще валится на первом тесте
0
07.08.2013, 07:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2013, 07:14
Привет! Вот еще темы с решениями:

Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете
Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете. В каждый момент времени происходит одно из событий:...

Очередь, теория. Очередь на шести стеках
Здравствуйте, пытаюсь побольше найти информации про очереди и их применение в программировании. Из того что я нашел, все описывается лишь...

Структура "Очередь" (задача)
Помогите, пожалуйста, разобраться со структурой &quot;Очередью&quot;. Выбивает ошибки в двух строчках - 11 и 15. Подозреваю, что сам код неточно...

Создать очередь. Добавить элемент в очередь. Удалить элемент из очереди
Нужно создать очередь. Добавить элемент в очередь. Удалить элемент из очереди. Вот моё &quot;творение&quot;. int main() { int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru