В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
мрамар
мрамар
18.08.2022 10:57 •  Информатика

C++ и Java ограничение по времени на тест 2 секунды
ограничение по памяти на тест 64 мегабайта
ввод стандартный ввод
вывод стандартный вывод
Некоторые студенты предпочитают использовать при решении задач практики язык программирования C++, некоторые — язык программирования Java. И у того, и у другого имеются как преимущества, так и недостатки. Если не удаётся составить решение на одном языке, в отдельных случаях имеет смысл попробовать использовать другой.

Макс сейчас занят как раз тем, что переписывает собственное решение на другой язык. Несмотря на то, что синтаксис двух языков очень похож, Макс старается учитывать традиции и стиль конкретного языка.

Например, для именования переменных в C++ используется следующее соглашение: идентификатор записывается только строчными буквами, отдельные слова в составе идентификатора разделяются символом подчёркивания. Примерами идентификаторов языка C++ являются «selection_sort», «key_value_pair» и «max_f_p_s».

Для именования переменных в Java используется так называемый «camelCase»: отдельные слова в составе идентификатора записываются слитно, первые буквы всех слов кроме начального являются заглавными. Примерами идентификаторов языка Java являются «selectionSort», «keyValuePair» и «maxFPS».

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

Входные данные
Ввод содержит строку S (1 ≤ |S| ≤ 100) — имя переменной. Гарантируется, что строка S является корректным идентификатором в рамках рассматриваемых стилей.

Выходные данные
Если имя переменной соответствует стилю C++, выведите его аналог для стиля Java. Если имя переменной соответствует стилю Java, выведите его аналог для стиля C++.

Если вариантов ответа несколько, выведите любой.

Примеры
входные данные
selection_sort
выходные данные
selectionSort
входные данные
keyValuePair
выходные данные
key_value_pair

Языки
C++ (Visual C++ 2010)
C# .NET (Visual C# 2010)
Pascal (Free Pascal 3.0.0)
Pascal (PascalABC.NET 3.2)
Python (Python 3.2.5)
Java (Java Development Kit 1.7)

Показать ответ
Ответ:
kublahan
kublahan
15.10.2020 16:36

Я так понимаю, предполагается, что мы переводим из С++ в Java и наоборот. Или от незаконченного перевода куда-нибудь на оба языка.

Таким образом, на вход могут подаваться как key_value_pair или keyValuePair, так и, например, key_value_Pair.

Pytuhon 3

Код:

import refrom functools import reducevariable_name = input()to_cpp_translation = re.match(r".*[A-Z].*", variable_name) is not Noneto_java_translation = re.match(r".*_.*", variable_name) is not Nonewords = re.findall(r"_?([A-Z]?[a-z]+)_?", variable_name)if to_cpp_translation:    print("_".join(words).lower())if to_java_translation:    print(reduce(lambda s, a: s + a.capitalize(), words))
C++ и Java ограничение по времени на тест 2 секундыограничение по памяти на тест 64 мегабайтаввод ст
C++ и Java ограничение по времени на тест 2 секундыограничение по памяти на тест 64 мегабайтаввод ст
C++ и Java ограничение по времени на тест 2 секундыограничение по памяти на тест 64 мегабайтаввод ст
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота