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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
#1

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

07.08.2013, 03:06. Просмотров 1562. Ответов 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;}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2013, 03:06     Задача Очередь
Посмотрите здесь:

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

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

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

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

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

Очередь - C++
В чем проблема? не хочет запускаться код? Ошибки следующие: #include &lt;iostream&gt; #include &lt;queue&gt; using namespace std; ...

Очередь C++ - C++
всем доброе утро) вот такое задание:все отрицательные элементы сдвинуть в начало очереди(заполнение либо рандомно ,либо с клавы) ; велико...

Очередь - C++
Реализуйте структуру данных &quot;очередь&quot; на основе циклического массива или другим способом. Входные данные В каждой строке входных...

Очередь - C++
Всем приветики! Если кто нибудь знает помогите пожалуйста вот с такой задачкой. Есть какая-то очередь с элементами, нужно найти все...

Очередь - C++
Здрасти всем... Не могу понять как организовать 2 очереди для данной задачи и не понятно как реализоваться функцию суммы .. ...

Очередь - C++
Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения - номер поезда - время отправления ...

Очередь - C++
Всем привет. Дано задание: Разработать программу, реализующую алгоритм очереди (20 элементов). Задача решается в двух вариантах:...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 06:52     Задача Очередь #2
Цитата Сообщение от Bohes_ Посмотреть сообщение
Почему мое решение выдает иногда неверный ответ?

Не по теме:

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



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

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

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

Если if (a > 145) превратить a>=145, то вообще валится на первом тесте
Yandex
Объявления
07.08.2013, 07:14     Задача Очередь
Ответ Создать тему
Опции темы

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