| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- RN 프로젝트
- HTML
- JavaScript
- 프론트개발
- 자바스크립트 날씨 웹 만들기
- [AI 5기] 연습 문제집
- 코딩부트캠프
- 개발일기
- 날씨 웹 만들기
- 개발공부
- reactnativecli
- 자바스크립트
- 프로그래머스
- 부트캠프
- leetcode
- 엘리스 ai 트랙
- 코드스테이츠
- 엘리스 AI 트랙 5기
- 간단한 날씨 웹 만들기
- 자바스크립트 날씨
- 엘리스
- [파이썬 실습] 기초 문제
- 삼항연산자
- 리트코드
- 자바스크립트 sort()
- [파이썬 실습] 중급 문제
- 프론트개발공부
- 자바스크립트 reduce()
- 자바스크립트 split()
- [파이썬 실습] 심화 문제
- Today
- Total
목록전체 글 (287)
개발조각
이번문제는 쉬운편이라 쉽게 풀었습니다.😊 이번 문제는 "입출력 예 설명"만 보셔도 쉽게 풀것같아요. 해결방안 function solution(s) { let count = 0; let totalZero = 0; let removeZero; while(s !== '1'){ removeZero = [...s].filter(a => a === '1').length; totalZero += s.length - removeZero; s = removeZero.toString(2); count++; } return [count, totalZero] } const : s가 "1"이 될 때까지 이진 변환의 횟수 totalZero : 제거된 모든 0의 개수 removeZero : "0"이제거된 s의 길이 while(s ..
행렬의 곱셈이라... 행렬이 제가 고등학교 올라갔을 때 사라져서 배운 기억이 없어요.😅 그래서 검색해서 행렬의 곱셈이 뭔지 공부하고 풀었습니다. 행렬의 곱셈이 뭔지 아시면 쉽게 풀었을 것 같아요. 행렬의 곱셈이란 위키백과에 나와있는 행렬의 곱셈이란 행렬 곱셈(matrix multiplication)은 두 개의 행렬에서 한 개의 행렬을 만들어내는 이항 연산이다. 이때 첫째 행렬의 열 개수와 둘째 행렬의 행 개수가 동일해야 한다. 곱셈의 결과 새롭게 만들어진 행렬은 행렬곱(matrix product)라 하며, 첫째 행렬의 행 개수와 둘째 행렬의 열 개수를 가진다. 행렬 A와 B의 곱은 간단히 AB로 나타낸다. 이렇게 씌여져 있긴 한데 저는 이걸 봐서는 행렬 곱셈이 뭔지 이해가 안 돼서 다른 자료를 찾아보았습..
점점 프로그래머스 힘드네요.😂 문제풀이가 있으면 풀겠는데... 문제를 이해하고 규칙을 정하는 과정까지가 너무 힘들고 어떻게 해야 될지 점점 모르겠습니다. 어렸을 때 수학문제를 풀 때 공식과 개념을 파악하는 것처럼 알고리즘 문제에서도 그런 과정이 필요한가 봐요... 솔직히 문제에 대한 예시도 별로 안 나와있고 이것만 봐서 어떻게 풀라는 거야!!!!!! 질문하기가 없었으면 이걸 풀 수 있긴 했을까 의문이에요...😔 해결방안에 대해 설명하자면 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다. 이 정보를 총 합쳤을 때 경우의 수..
해결방안 function solution(s) { let arr = []; for(let i=0; i b === undefined -> false임으로 arr.push(s[0]) -> arr = [b] i=1 s[1] === arr[arr.length-1] ? arr.pop() : arr.push(s[1]); -> a === b -> false임으로 arr.push(s[1]) -> arr = [b, a] i=2 s[2] === arr[arr.length-1] ? arr.pop() : arr.push(s[2]); -> a === a -> true임으로 arr.push(s[2]) -> arr = [b] i=3 s[3] === arr[arr.length-1] ? arr.pop() : arr.push(s[3])..
이번 문제는 문제 이해하는데 오래 걸리고 아직도? 진번에 따라 이렇게 진행이 되는지 의문이 되는 문제입니다. 인간의 머리속 ?진법과 컴퓨터에서? 진법은 다른가 봐요. 그래서 이번 교훈은 애매하고 잘 모르겠으면 콘솔부터 찍어보고 확인해보자 (머릿속과 종이로 백날 생각해도 답이 안 나오니까 치고 시작해보자!!) 테스트 1로 설명하자면 1. 0부터 시작하는 숫자를 2진법(n=2)으로 바꾸고 0 -> 0 1 -> 1 2 -> 10 3 -> 11 4 -> 100 이걸 이어 붙이면 -> 011011100 2. 이어붙이 숫자들에서 2명(m=2)중 1번째(p=1)의 숫자들만 나열하기 0 1 1 0 1 1 1 0 0 1 2 1 2 1 2 1 2 1 -> 01110 3. 나열한 숫자 중 4개(t=4)만 추출하기 -> 01..
이번 문제는 레벨 1 수준의 문제였습니다. 요즘 reduce를 안 써서 사용법을 잊고 있었는데 이번 기회에 다시 알게 되는 문제였던 것 같습니다. 최솟값을 만들기 위해서는 "큰수 * 작은 수"를 하면 작은 수가 나옵니다. 그래서 배열A는 오름차순으로 배열B는 내림차순으로 정렬한 뒤 각 배열의 index가 같은 원소끼리 곱해주고 더해주면 됩니다. 해결방안 function solution(A,B){ let numA = A.sort((a,b)=> a-b); let numB = B.sort((a,b)=> b-a); // 버전 1 var answer = 0; for(let i=0; i acc + cur*numB[idx],0); } 해결방안 순서 배열A는 오름차순, 배열B는 내림차순으로 정렬해주기 배열 A, B에서..
이번 문제는 정렬의 소중함을 느끼는 문제였고, 복잡하게 생각 안 하고 단순하게 생각해야지 풀 수 있었던 문제인 것 같습니다. 접근방법 이 문제는 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 구하는 문제 한 번에 최대 2명씩 밖에 탈 수 없다. 이러한 조건을 가지고 있는 문제입니다. 구명보트 개수의 최소값을 구하기 위해 가장 좋은 방법은 아마 다들 아실거에요. 초등학교 때 배웠나? 어렸을 때 배우 던 건데 종이에다가 풀어보라하면 대부분 자동적으로 손이 저절로 쓰고 있는 모습을 볼 수 있을 겁니다. (이래서 수학이 중요한가봐요.) 예를 들면 people =[90, 80, 70, 50, 40, 20, 10]; limit=100이면 다들 종이에다가는 이렇게 풀지 않았을까요? 구명보트 문제는 위에 ..
인생은 항상 제 맘대로 안 되는 건 아는데 코드스테이츠 불합격하니까 우울하네요😭 합격자는 카톡으로 온다 했는데 메시지로 와서 쎄했더니 불합격이네요... 언제나 봐도 슬프다... 그래서 다음날 왜 불합격했는지 궁금해서 전화해봤습니다. (저같이 전화한 사람이 많았나 봐요;;; 상담사분이 한숨 쉬더라고요...ㅎㅎ) 그 과정에서 충격적인 사실을 들었습니다!!!😲 합격자, 합격 대기자, 불합격자 이렇게 3 분류로 나뉘었는데 저는 그중에서 합격 대기자도 아닌 불합격을 받았다는 게 충격이었고, 가장 충격적인 건 제가 HRD에서 봤을 때 신청자가 511명이길래 이것도 와 진짜 많다고 생각했는데 실상은 정원이 140명인데 거기서 10배 넘게 신청을 했다는 점입니다. (그럼 약 1400명 이상이라는 건가....?) 그리고..