Строки(121 задач)
Целые числа(112 задач)
Битовые операции(28 задач)
Логический тип(3 задач)
Структуры(18 задач)
Вещественные числа(33 задач)
Множества(16 задач)
Словари(21 задач)
Напишите программу, которая будет выполнять последовательность запросов вида ADD num, PRESENT num и COUNT (без параметра). Программу обязательно следует писать с использованием шаблонного типа set.
Выполнение каждого запроса вида ADD num должно добавлять элемент num во множество (если такой элемент уже есть, добавление ещё одной копии не изменяет множество), на экран при этом ничего не выводится.
При выполнении каждого запроса вида PRESENT num должно выдаваться сообщение «YES» или «NO» (большими буквами, в отдельной строке), соответственно тому, есть ли такой элемент во множестве; значение множества при этом не изменяется.
При выполнении каждого запроса вида COUNT должна выдаваться на экран в отдельной строке текущее количество различных элементов в множестве; значение множества при этом не изменяется.
В первой строке стандартного входного потока задано количество запросов N (1 < N < 100000), далее следуют N строк, каждая из которых содержит по одному запросу согласно описанного формата.
Значения чисел не превышают по модулю 100000000.
Выводите на стандартный выход (экран) в отдельных строках результаты запросов PRESENT и COUNT; на запросы ADD ничего выводить не надо.
7 ADD 5 ADD 7 COUNT PRESENT 3 PRESENT 5 ADD 3 COUNT
2 NO YES 3
У банка есть клиенты. Каждый клиент имеет ровно один счет.
Напишите программу (обязательно с использованием ассоциативного массива), которая будет выполнять последовательность запросов таких двух видов:
1) начинается с числа 1, затем через пробел следует имя клиента (слово из латинских букв), далее через пробел идет сумма денег, которая прилагается к счету текущего клиента (целое число, не превышает по модулю 10000).
2) начинается с числа 2, через пробел следует имя клиента. На каждый такой запрос программа должна ответить какая сумма в данный момент есть на счету заданного клиента. Если такое имя клиента пока ни разу не упоминалось в запросах вида 1, выводите вместо числа слово ERROR.
В начале работы программы у всех клиентов на счету 0. Затем суммы могут становиться как положительными, так и отрицательными.
Обратите внимание, что в ситуации, когда клиент снял суммарно ровно столько же денег, сколько положил, сумма на счете становится равной 0; но, раз его имя уже встречалось, нулевое значение не является основанием выводить ERROR.
Первая строка стандартного входного потока — количество запросов N (1 < N < 100000). Далее следуют N строк в каждой из которых описан один из двух описанных выше видов запроса.
На каждый запрос 2-го вида нужно вывести текущее значение на счету заданного клиента (или слово ERROR).
7 1 asdf 3 1 zxcv 5 2 asdf 1 asdf -2 2 asdf 2 lalala 2 zxcv
3 1 ERROR 5
Дано два числа a и b. Выведите гипотенузу треугольника с заданными катетами.
Вводятся два целых положительных числа, не превышающих 1000.
Выведите ответ на задачу с точностью 10 знаков после запятой
3 4
5.0
Напишите программу, которая приветствует пользователя, выводя слово Hello
, введенное
имя и знаки препинания по образцу (см. пример входных и выходных данных).
Программа должна считывать в строковую переменную значение и писать соответствующее приветствие. Обратите внимание, что после запятой должен обязательно стоять пробел, а перед восклицательным знаком пробела нет.
Вводится строка, длина которой не превышает 100 символов.
Выведите ответ на задачу.
Harry
Hello, Harry!
Напишите программу, которая считывает целое число и выводит текст, аналогичный приведенному в примере (пробелы важны!):
Вводится целое число (гарантируется, что число находится в диапазоне от -1000 до +1000).
Выведите две строки, согласно образцу.
179
The next number for the number 179 is 180. The previous number for the number 179 is 178.