본문 바로가기

전체보기192

일주일 10시간 이상 공부 챌린지 회고, 꾸준히 하는 습관 챌린지를 진행한 이유 2023년 새해가 되고 2022년부터 2023년이 되면 지금보다 훨씬 공부에만 집중해야겠다는 마음가짐을 먹고 있었다. 계속 공부만 하다 보니 자연스럽게 1월 16일 ~ 1월 22일까지 일주일 동안 10시간 이상 공부하기 챌린지를 진행했다. 내 공부 시간에는 블로그 쓰기, 관련 글/책 읽기, 강의 듣기 등 여러 가지가 포함되기 때문에 사실 컴퓨터 앞에 앉아있다 보면 많은 시간이 금방 지나간다. 평소에도 이것저것 하면서 10시간 넘는 날이 많다고 생각했는데 의도적으로 9시간도 아니고 '10시간 이상은 무조건 공부한다'라고 하고 제대로 측정해 보니 '생각보다 쉽다 + 생각보다 어렵다'이다 🤣 무슨 말이냐 하면 '이 정도면 되겠지?' 그만하고 싶을 때 시간을 보면 아직 달성하지 않았기 때문.. 2023. 1. 23.
[인공지능(AI) 기초 다지기] Pythonic Code 파이썬다운 코드를 작성해보자! - list comprehension, enumerate, zip, lambda, generator, asterisk(*) .. 🐍 파이썬 스타일 코드 Pythonic Code란? - 파이썬 특유의 문법을 활용하여 효율적으로 표현한 코드. 📝 Contents - split & join - list comprehension - enumerate & zip - lambda & map & reduce - generator - asterisk list comprehension - 기존 List 사용하여 간단히 다른 List를 만드는 기법 - 포괄적인 List, 포함되는 리스트라는 의미로 사용됨 - 파이썬에서 가장 많이 사용되는 기법 중 하나 - 일반적으로 for + append 보다 속도가 빠름 list comprehension을 사용하면 반복문 안에 반복문을 길게 써주지 않고 한줄에 중첩 반복문도 쓸 수 있고, 조건을 함께 써줄 수 있.. 2023. 1. 23.
[JS] reduce index와 함께 효과적으로 쓰기 / 최솟값 만들기 풀이 예시 / ?? 논리 연산자 [프로그래머스] 최솟값 만들기 문제 예시 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 A = [1, 4, 2] , B = [5, 4, 4] 라면 A에서 첫번째 숫자인 1, B에서 첫번째 숫자인 5를 뽑아 곱하여 더합니다. (누적된 값 : 0 + 5(1x5) = 5) A에서 두번째 숫자인 4, B에서 세번째 숫자인 4를 뽑아 곱하여 더합니다. (누적된 값 :.. 2023. 1. 22.
[프로그래머스] 핸드폰 번호 가리기 - JavaScript / repeat(), fill(), 정규 표현식 풀이 ✏️ 문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 phone_number는 길이 4 이상, 20이하인 문자열입니다. 입출력 예 phone_number return "01033334444" "*******4444" "027778888" "*****8888" ✏️ 문제 풀이 - 내 풀이 function solution(phone_number) { let endNumber = [...phone_number].splice(-4).join(''); phone_num.. 2023. 1. 21.
[Js] Array에서 순서 변경하지 않고 특정 값 삭제하기 🧚🏻‍♀️ / 제일 작은 수 제거하기 [프로그래머스] 제일 작은 수 제거하기 문제 예시 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 제한 조건 arr은 길이 1 이상인 배열입니다. 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. 입출력 예 arr return [4,3,2,1] [4,3,2] [10] [-1] 위 문제에서 array 순서를 바꿔준 채로(sort) 제일 작은 수를 제거하고 return 하면 테스트 케이스 모두 실패가 나온다. 기본 array 순서는 지키면서.. 2023. 1. 21.
[프로그래머스] JadenCase 문자열 만들기 - JavaScript / substring(), slice(), charAt() + 레거시(lagacy)란? ✏️ 문제 설명 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 s는 길이 1 이상 200 이하인 문자열입니다. s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다. 숫자는 단어의 첫 문자로만 나옵니다. 숫자로만 이루어진 단어는 없습니다. 공백문자가 연속해서 나올 수 있습니다. 입출력 예 s return "3people unFollowed me" "3people Unfollowed Me" "for the last week.. 2023. 1. 20.