[Python] 프로그래머스 lv2 - JadenCase 문자열 만들기

2022. 12. 28. 11:51알고리즘/문제풀이

[Python] 프로그래머스 lv2 - JadenCase 문자열 만들기

 

코딩테스트 연습 - JadenCase 문자열 만들기 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

 

 

  • 주어진 것
    • 문제에 필요한 문자열
  • 조건
    • 모든 단어의 첫 문자 대문자로 변환
    • 나머지 문자는 소문자
    • 공백은 여러 개 가능 - 주의할 점

 

문제 풀이

 

  1. 주어진 문자열을 리스트로 변환
  2. 변환하는 과정에서 모든 문자 소문자 화
  3. 공백을 기준으로 공백 다음 문자를 대문자로 변환 예정
  4. 첫번째첫 번째 단어 첫 번째 문자의 경우 앞에 공백이 없으므로 반복문으로 체크하기 전에 먼저 대문자로 변환
  5. 반복문
  6. 만약 공백이 존재한다면 해당 공백 뒤의 문자는 대문자화
def solution(s):
    a=list(s.lower()) #s의 리스트화
    a[0]=a[0].upper() #문자열 첫번째를 대문자화
    for i in range(len(s)-1):
        if a[i]==' ': # 만약 문자가 공백이면 해당 문자 뒤는 대문자로 변경
            a[i+1]=a[i+1].upper()
    return ''.join(a) # 해당 리스트를 전부다 다시 문자열로 조합


오답의 경우

  • 단어를 기준으로 리스트를 변환하였을 때 split() 메서드를 사용
  • 해당 경우에는 공백이 여러개인 경우 공백이 제거되면서 단어로 구분이 되었기에 오답 발생
  • 공백 체크 꼼꼼히 하기