CaSe StYlEs


Submit solution

Points: 10
Time limit: 5.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C#, Go, Java

Existeixen nombroses convencions a l'hora d'escollir la seqüència de caracters que s'usa com a identificador de variables, tipus, funcions, ...

Normalment, a cada llenguatge hi ha unes convencions, encara que cada organització té el seu propi estil.

Les més comuns són:

  • CamelCase : Java, C#, Javascript, Go, Ruby, JSON

  • kebab-case : Lisp, XML

  • snake_case : Python, PHP, C, C++

Input Format

Les paraules que componen l'identificador

Constraints

No hi ha restriccions sigificatives

Output Format

S'escriurà l'identificador en CamelCase, kebab-case i snake_case.

En CamelCase cada paraula comença en majúscules, i no es separen amb espais.

En kebab-case totes les lletres van sempre en minúscula, i separades amb -

En snake_case les paraules es separen amb _ i es posen en majúscules si totes les lletres són majúscules. Si hi ha alguna lletra minúscula, es posen totes les lletres en minúscula.

Test Case 1

Input
case styles
Output
CaseStyles
case-styles
case_styles

Test Case 2

Input
CASE STYLES
Output
CaseStyles
case-styles
CASE_STYLES

Test Case 3

Input
CAsE STYLES
Output
CaseStyles
case-styles
case_styles

Test Case 4

Input
Fork join worker thread factory
Output
ForkJoinWorkerThreadFactory
fork-join-worker-thread-factory
fork_join_worker_thread_factory

Test Case 5

Input
abstract transactional data source spring context tests
Output
AbstractTransactionalDataSourceSpringContextTests
abstract-transactional-data-source-spring-context-tests
abstract_transactional_data_source_spring_context_tests

Authorship: Gerard Falcó

CC BY-NC-SA 4.0