Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 

Комментарии

(Время: 1 сек. Память: 16 Мб Сложность: 52%)

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

Исходный текст может содержать комментарии трёх типов:

  1. // ...
  2. { ... }
  3. (* ... *)

Комментарий первого типа начинается составным символом // и продолжается до конца строки. Комментарий второго типа начинается символом { и заканчивается символом }. Он может размещаться в нескольких строках. Комментарий третьего типа начинается составным символом (* и заканчивается составным символом *). Он также может размещаться в нескольких строках.

Комментарии не могут быть вложены друг в друга, так что запись вида {…//…(*…*)…} является одним комментарием второго типа. Комментарии не могут размещаться внутри символьных строк, так что запись ‘…(**)…{}…’ не содержит ни одного комментария.

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

Во входном файле INPUT.TXT записан исходный текст программы на языке Pascal. Размер текста не превосходит 16 Кб.

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

В выходной файл OUTPUT.TXT выведите одно число – количество комментариев в исходном тексте программы.

Примеры

INPUT.TXTOUTPUT.TXT
1{ my first program }
begin
writeln('hello world');
end.
1
2const comments = '{}(**)//';
begin
writeln(comments);
end.
0
3// comment
begin
writeln('{ string }');
{ while (true) do; }
end.
2

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]

Красноярский краевой Дворец пионеров, (c)2006 - 2017, ICQ: 151483