인사말

내일이면 24년도 12월이 끝나는 날이에요!

다들, 당장 내일이 종말이 되는 날이라면 어떤 걸 하실 건가요? 🤔

저는 가장 좋아하는 옷을 입고,

가장 좋아하는 음식을 먹으면서,

가장 좋아하는 사람과 자결하려구요 ㅇㅅㅇ,,

 

무서운 상상은 치워두고, 오늘의 TMI는요

몸살 걸려서 컨디션 최악인 하루였습니다 ㅠㅠ

왜 항상, 전조가 없다가 자고 일어나면 후폭풍이 올라오는 걸까요?

하루종일 눈이 뱅글뱅글 돌았어요 😵‍💫

 

거두절미하고!

오늘도 파이팅합시다! 🔥

 

오늘의 일정
오전(09:00 ~ 13:00) 11:00~12:00 코드 카타 3문제
12:00~13:00 프로그래머스 4문제
오후(14:00 ~ 18:00) 14:00~18:00 머신러닝 비지도 학습
저녁(19:00 ~ 21:00) 19:00~21:00 머신러닝 비지도 학습

요약

  1. 코드 카타 3문제
    1. 정수 부분
    2. n의 배수
    3. 문자열의 앞의 n글자
  2. 프로그래머스 4문제
    1. 주사위의 개수
    2. 문자열 정렬하기(1) https://bmk0703.tistory.com/92
    3. 합성수 찾기
    4. 2차원으로 만들기 https://bmk0703.tistory.com/95
  3. 머신러닝 비지도 학습 https://bmk0703.tistory.com/93

오전(09:00 ~ 13:00)

1. 코드 카타 3문제

1.1. 정수 부분

def solution(flo):
    return int(flo)

 

🤔 문제 풀이방법

  • int로 형변환 해주면 문제 해결!

 

1.2. n의 배수

def solution(num, n):
    answer = 0
    
    for i in range(1, num+1):
        if i % n ==0:
            answer = 1
        else:
            answer = 0
            
    return answer

 

🤔 문제 풀이방법

  • for i in range(1, num+1):
    • for과 range문으로 범위를 설정해줄게요
  • if i % n ==0:
       answer = 1
    else:
       answer = 0
    • i가 n의 배수인 경우를 찾는 문제예요
    • 그래서 두 개를 나누었을 때 나머지가 0이 된다면 배수겠죠?
      • 이 경우엔 1을 반환하고, 아닌 경우는 0으로 설정해주면! 문제 해결

 

1.3. 문자열의 앞의 n글자

 

def solution(my_string, n):
    return my_string[0:n]

 

🤔 문제 풀이방법

  • return my_string[0:n]
    • 첫 번째 자리[0]부터 n번째 자리[n]를 슬라이싱 해주면 문제 해결!

 

2. 프로그래머스 4문제

2.1. 주사위의 개수

def solution(box, n):
    
    width = box[0]//n
    length = box[1]//n
    height = box[2]//n
    
    return width*length*height

 

🤔 문제 풀이방법

  • 주사위 한 개를 박스에 넣을 때, 주사위의 가로&세로&높이 값이 중요해요
  • 그래서 주사위의 모서리 길이(n)를 각각 가로, 세로, 높이의 몫(//)을 구해줘요
  • 그 뒤 가로*세로*높이를 하면 문제 해결!

 

2.2. 문자열 정렬하기(1)

https://bmk0703.tistory.com/92

def solution(my_string):
    answer = []
    
    for i in my_string:
        if i.isdigit():
            answer.append(int(i))
            
    answer.sort()
    return answer

 

2.3. 합성수 찾기

def solution(n):
    answer = 0
    
    for j in range(2, n+1): # 2부터 시작하는 n+1까지의 범위
        num = 0 # 초기화
        for i in range(1, n+1): # 1부터 시작하는 n+1까지의 범위
            if j % i ==0:   # 약수 구하는 코드
                num +=1
            if num >=3: # num의 숫자가 3개 이상이 된다면 합성수를 의미
                answer +=1  # 그 경우만 answer에 +1을 해줌
                break
                
    return answer

 

약수의 개수가 3개 이상인 걸 합성수라고 해요

너무 오랜만에 다시 듣는 개념이라, 동공지진 일어났어요 🤣

 

2.4. 2차원으로 만들기

def solution(num_list, n):
    answer = []
    
    for i in range(0, len(num_list)//n):
        answer.append(num_list[n*i:(n*i)+n])

    return answer

 


오후(14:00 ~ 18:00), 저녁(19:00 ~ 21:00)

3. 머신러닝 비지도 학습

https://bmk0703.tistory.com/93


마무리

오늘은 머신러닝 마지막 과제인 비지도 학습을 해보았어요!

pairplot 그래프를 써서 데이터 분석하니까 너무 재밌더라구요!

한 번에 파악할 수 있는 구조로 돼있어서 예쁘더라구요, 진짜 재밌던 오늘이었어요 🤭

+ Recent posts