Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Witalij

Вася и Петя

03.04.2010, 12:45. Показов 1736. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Карточки в метро

Некоторые банки выпускают банковские карты, которые могут использоваться для оплаты проезда в метро. При проходе через турникеты по этой карте каждый проход фиксируется, подсчитывается количество проходов за календарный месяц и раз в месяц с карточки списываются деньги в соответствии с тем, сколько было сделано проходов по специальным тарифам (приведены тарифы по состоянию на 15.10.2009):
1-22.00
2-44.00
3-64.33
4-84.67
5-105.00
6-124.00
7-143.00
8-162.00
9-181.00
10-200.00
11-218.00
12-236.00
13-254.00
14-272.00
15-290.00
16-308.00
17-326.00
18-344.00
19-362.00
20-380.00
21-392.13
22-404.25
23-416.38
24-428.50
25-440.63
26-452.75
27-464.88
28-477.00
29-489.13
30-501.25
31-513.38
32-525.50
33-537.63
34-549.75
35-561.88
36-574.00
37-586.13
38-598.25
39-610.38
40-622.50
41-643.63
42-646.75
43-658.88
44-671.00
45-683.13
46-695.25
47-707.38
48-719.50
49-731.63
50-743.75
51-755.88
52-768.00
53-780.13
54-792.25
55-804.38
56-816.50
57-828.63
58-840.75
59-852.88
60-865.00
61-863.50
62-862.00
63-860.50
64-859.00
65-857.50
66-856.00
67-854.50
68-853.00
69-851.50
70-850.00
При совершении более 70 поездок с карточки списывается 850 рублей за 70 поездок, и по 15.71 за каждую поездку начиная с 71-й. Кроме того, если за месяц по карточке был совершен хотя бы один проход, то списывается банковская комиссия в размере 10 рублей (независимо от числа проходов), если же проходов по карте не было, то комиссия не списывается.

Родители завели двум братьям Пете и Васе по такой карточке. Петя и Вася иногда ездят вместе, а иногда – порознь. Естественно, когда они едут не вместе, то каждый из них пользуется своей карточкой. Когда же они едут вместе, они могут как воспользоваться каждый своей карточкой, так и оба пройти по одной из карточек (совершив два прохода по этой карточке).

Кроме того, они заметили, что в некоторых случаях бывает выгодно совершать лишние проходы по карточке (например, если по карточке за месяц совершено 69 проходов, то надо сделать 70-й – списанная сумма в этом случае окажется меньше).

Известно, что в наступающем месяце Вася собирается сделать A самостоятельных поездок, Петя – B самостоятельных поездок, и еще С поездок они сделают вместе (то есть всего они сделают A+B+2C проходов через турникеты). Напишите программу, которая по заданным числам A, B и C определит минимальную сумму, которую они могут потратить (с учетом банковских комиссий, при необходимости совершив лишние проходы через турникеты).

Технические условия

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

Вводятся целые числа A, B, C (каждое из них из диапазона от 0 до 1000).

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

Выведите, сколько рублей будет списано суммарно с Васиной и Петиной карточек. Результат должен быть выведен с двумя знаками после десятичной точки.

Информация о задаче
Лимит времени: 1 секунда
Лимит памяти: 64 MB
Баллы за пройденный тест: 2.5
Сложность: 39% 11/18
Мои результаты: 0/3

ПримерПример входных данных
Sample 1
1 1 0

Sample 2
59 0 0

Sample 3
10 10 10

Sample 4
0 0 30 Пример выходных данных
Sample 1
64.00

Sample 2
860.00

Sample 3
721.25

Sample 4
860.00

Вот мой код:
Delphi
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
program kartku_v_metro;
{$APPTYPE CONSOLE}
const
  mas:array[1..70]of real=(22,44,64.33,84.67,105,124,143,162,181,200,218,236,254,272,290,308,326,344,362,380,392.13,404.25,416.38,428.5,440.63,452.75,464.88,477,489.13,501.25,513.38,525.5,537.63,549.75,561.88,574,586.13,
598.25,610.38,622.5,643.63,646.75,658.88,671,683.13,695.25,707.38,719.5,731.63,743.75,755.88,768,780.13,792.25,804.38,816.5,828.63,840.75,852.88,865,863.5,862,860.5,859,857.5,856,854.5,853,851.5,850);
var
  a,b,c,n1,n2,k,l:longword;
  ans:real;
////////////////////////////////////////////////////////////////////////////////
function max(a,b:longword):longword;
begin
  if a>b then max:=a else max:=b;
end;
////////////////////////////////////////////////////////////////////////////////
begin
  assign(input,'input.txt');
  reset(input);
  assign(output,'output.txt');
  rewrite(output);
  read(a,b,c);
  n1:=a;
  n2:=b;
  k:=a;
  l:=b;
  if (n1<59)and(n2<59)then
    if n1>n2 then n1:=n1+c else n2:=n2+c*2;
  if k>=59 then n1:=n1+c;
  if l>=59 then n2:=n2+c;
  if ((n2>70)and(n1<>0))or((n2>78)and(n1=0)) then
    begin
      n1:=n1+n2-70;
      n2:=70;
    end;
  if ((n1>70)and(n2<>0))or((n1>78)and(n2=0)) then
    begin
      n2:=n2+n1-70;
      n1:=70;
    end;
  if (n1<70)and(n1>=59) then n1:=70;
  if (n2<70)and(n2>=59) then n2:=70;
  ans:=0;
  if n1<=70 then ans:=ans+mas[n1] else ans:=ans+mas[70]+(n1-70)*15.71;
  if n2<= 70 then ans:=ans+mas[n2] else ans:=ans+mas[70]+(n2-70)*15.71;
  if n1<>0 then ans:=ans+10;
  if n2<>0 then ans:=ans+10;
  writeln(ans:0:2);   }
  close(input);
  close(output);
end.
Заранее спасибо.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.04.2010, 12:45
Ответы с готовыми решениями:

Задача Петя и числа.
На доске написано N натуральных чисел. Петя выбирает два из них и, если они одинаковые, одно из них стирает. Если числа разные, то он...

Отгадать загаданное число
Здравствуйте,помогите пожалуйста написать код.Вася загадал число от 1 до N. За какое наименьшее количество вопросов (на которые Вася...

Запросить имя пользовавателя и напечатать "Привет Вася", 10 раз
Необходимо преобразовать задачу так, что бы &quot;Привет Вася&quot; печаталось 10 раз, если Вася имя пользователя (используя цикл repeat). program...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2010, 12:45
Помогаю со студенческими работами здесь

Написать программу, которая определяет, сумму всех чисел, которые Вася и Петя запишут в тетрадь.
Вася и Петя играют в следующую игру. На доске написано натуральное число, состоящее из N цифр (1&lt;=N&lt;=100). Ребята по очереди выбирают...

Дана строка содежающия ФИО вывести фамилию. Пример! Вася Пупкин Пупкинович. Пупкин.П.П
Дана строка содежающия ФИО вывести фамилию. Пример! Вася Пупкин Пупкинович. Пупкин.П.П Помогите Пожалуйста!

Вася в казино играет.
Вася в казино играет в интересную игру. Сначала он платит вступительный взнос за игру и в обмен на деньги получает право играть. Более...

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

Определить, кто встал раньше Петя или Саша
Петя встал утром в А часов, Коля - на В минут раньше него.Сережа на С минут пойже Коли. А Саша встал на К минут пойже Сережи. Кто встал...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru