문제 확인

 

프로그래머스

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

programmers.co.kr

나의 풀이

  • 문제 조건에 띄어쓰기가 여러 개 있을 수 있다고 나와서, 그냥 문자 단위로 확인했다.
  • upper, lower 함수는 숫자가 섞여 있더라도, 문자에만 영향을 준다
def solution(s):
    answer = ""
    word = ""
    for char in s:
        if char == " ":
            answer += (word + " ")
            word = ""
        else:
            if not word:
                word += char.upper()
            else:
                word += char.lower()
    # 마지막 부분
    answer += word
    return answer

다른 사람 풀이

  • capitalize 함수를 사용하면 첫 글자만 대문자로 변경해준다.
def solution(s):
    answer = ''
    for i in s.lower().split(' '):
        if answer == '':
            answer += i.capitalize()
        # i가 공백이더라도 " " 가 더해지면서 오류 발생 X
        else:
            answer += ' '+i.capitalize()
    return answer

 

 

프로그래머스

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

programmers.co.kr