[TIL] 내배캠4기 React 18일차

hare·2022년 11월 17일
0

내배캠-TIL

목록 보기
14/75

오늘의 TIMELINE
오전

  • 웹 퍼블리싱 3주차 1-2강
  • 스터디 준비
    • 소개 파트 숙지
  • 코딩테스트 문제풀이 with팀원들
    • 프로그래머스 lv.0 - 옹알이(1)

오후

  • 웹 퍼블리싱 3주차 완강

    • 웹 퍼블리싱 정복반 요약 커큘 복습
  • Firebase 실시간 강의

  • 자바스크립트 스터디

    파이어베이스 강의 너무너무 도움되고 좋았는데 진짜 다시보기 엄청해야될 것 같아yo..


옹알이 (1)

이 문제는 분명 레벨0인데 왜 머리에 쥐가 날까요..?

팀원들이랑 같이 풀기 며칠 전에 혼자 해봤는데 결국 못풀었었다는..ㅎ
어떤 식으로 풀어야 할까 토론해보고 또 답이 안나와 결국 구글링을 했다.

https://velog.io/@yoontaeng/프로그래머스-옹알이1

비록 스스로는 못했지만😂
고마워요..덕분에 일말의 뿌듯함은 얻었어요

이 코드도 이해해보고 팀원들에게 설명해주는 과정에서 더 머리속에 남은 것 같다.
제출하고 다른 사람들 풀이를 보다가 replace함수를 써서 코드가 간결해지고 이 방법에 다들 감탄일색하는 걸 발견했다!

replace()

  • 문자열 변경 함수 -> 문자열에서만 사용가능
    • 문자열 안의 특정 문자를 새로운 문자로 변경하는 기능

replace(old, new, [count])

  • count : 변경할 횟수. 미입력 시 old의 문자열 전체를 변경 (디폴트: count=-1)

strip()

string.strip([문자])

  • 문자 : 선택 사항
  • 매개변수가 없으면 문자열의 시작과 끝에서 공백을 제거
  • 문자열에서만 사용가능

if ~ in / if ~ not in

  • if A in B :B안에 A가 있으면 True

  • if A not in B : B안에 A가 없으면 True

  • B에 문자열, 리스트, 튜플 자료형 사용가능!

    for문과의 사용

  • 반복문과 if ~ not in을 함께 사용하면 리스트에서 특정 요소의 포함여부를 알 수 있음

    • contains(), includes()와 비슷한 기능이라고 보면 되나

📌 if ~ not in 참고 블로그


def solution(babbling):
    c = 0
    for b in babbling:
        for w in [ "aya", "ye", "woo", "ma" ]:
            if w * 2 not in b: #w*2: ayaaya, yeye, woowoo, mama
                b = b.replace(w, ' ')
        if len(b.strip()) == 0:
            c += 1
    return c

한번만 봐선 도대체 뭔소리야 이랬는데 여기 사용된 함수나 문법을 직접 찾아보며 지금은 완전 이해완료..

내 답안

단지 파이썬언어로 옮겨적었을 뿐인 내 답안...ㅎr..
분발하자구!

def solution(babbling):
    can_speak = ["aya", "ye", "woo", "ma"]
    answer = 0
    for i in range(len(babbling)):
        count = len(babbling[i])
        for j in range(len(can_speak)):
            if can_speak[j] in babbling[i]:
                count -= len(can_speak[j])
        if count == 0:
            answer += 1

    return answer


case1 = ["aya", "yee", "u", "maa", "wyeoo"]
case2 = ["ayaye", "uuuma", "ye", "yemawoo", "ayaa"]
print(solution(case1))
print(solution(case2))

코드 참고 블로그

profile
해뜰날

1개의 댓글

comment-user-thumbnail
2022년 11월 18일

스스로 고민해보시고 구글링 하신건 너무 잘하신것같아요 ㅎㅎ
고생많으셨습니다

답글 달기