본문 바로가기
반응형

나의 개발일지/알고리즘 테스트11

[프로그래머스 - Level 1] 내적 (JS) [문제] 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. [a, b, c] + [d, e, f] → (a*d) + (b*e) + (c*f) [로직] 1. 배열의 길이가 같으로므 for문을 돌려 [i]번째 인덱스를 가져와 곱한다. 2. answer라는 변수를 만들어 곱한 값을 하나씩 더해준다. [코드] function solution(a, b) { let answer = 0; for (i = 0; i < a.length; i++) { answer += a[i]*b[i]; } return answer; } const a = [1,2,3,4]; const b = [-3,-1,0,2]; const c = [-1,0,1.. 2022. 7. 18.
[프로그래머스 - Level 1] 부족한 금액 계산하기 (JS) 네...? 뭘 하라구요? 일단 for문 돌려서 놀이기구 요금 합계부터 구하고.. 가진 돈 - 요금 합계가 0보다 크면 return 요금 합 - 가진돈을 해볼게요.. function solution(price, money, count) { let sum = 0; for (let i = 0; i 0 ? sum - money : 0); } let price = 3; let money = 20; let count = 4; console.log(solution(price, money, count));// 결과값 : 10 // 위의 코드 살짝 다듬음 function solution2(price, mo.. 2022. 7. 16.
[프로그래머스 - Level 1] 핸드폰 번호 가리기 (JS) 뒤에서부터 4자리 가져오고 → "*"에다가 뒤에서 4번째 전까지의 길이만큼 곱한 걸 합친다! 어제 배운 substr() 함수를 이용해 substr(-1, -4)를 하면 뒤에서 4개 가져올 수 있을줄 알았는데 자세히 보니 'str.substr(시작 인덱스, 추출 개수)'였다 시작을 뒤에서 4번째(-4)부터 해서, 4개 추출 하는 걸로 바꾸니 잘 돌아간다! 그럼 *로 바꿀 번호의 개수는 어떻게 알 수 있을까... 또 머리가 안 돌아가서 찾아봤다! ▼ 오늘의 함수 str.substr(시작 인덱스, 추출 개수) str.substring(시작 인덱스, 끝 인덱스) → 끝 인덱스 앞까지 추출 ※ substring()의 경우 (시작 인덱스 번호, 끝 인덱스 번호+1)로 해야 시작부터 끝까지 다 나옴 "*"로 바꿀 번.. 2022. 7. 16.
[프로그래머스 - Level 1] 두 정수 사이의 합 (JS) 이 문제는 수포자라 공식 이름은 몰라도 아래처럼 접근은 했었다.. (가우스 공식) 근데 너무 어려워~~ 모르게써~~~ const a = 5; const b = 3; function solution(a, b) { const small = a b ? a : b; let sum = 0; for (let i = small; i 2022. 7. 15.
[프로그래머스 - Level 1] 가운데 글자 가져오기 (JS) 나의 첫 알고리즘 코딩테스트 문제가 된 걸 축하한다 알고리즘이라 할 수 있는 건 제로초 유튜브 무료 강의 보면서 별 찍어본 게 처음이자 마지막이었는데... 새삼 느끼지만 이 강의 괜찮았던 것 같다 이번 주차에 끝까지 완강해보게써... 제로초 JS 유튜브 무료강의 링크 이게 중요한 게 아니라 다행히 이건 문제 설명이 친절해서 어떻게 접근해야할지 감은 왔다 "단어의 길이가 짝수라면 가운데 두 글자를 반환하면 됩니다."에서 힌트를 얻어 단어 길이가 짝수인 경우와 홀수인 경우를 나눠 생각해봤다 1. 홀수인 경우(a = "abcde") : a.length/2 = 2.5이므로 내림을 한 3번째 자리 수를 하나만 가져와야 함. 2. 짝수인 경우(b = "fghi") : b.length/2 = 2로 딱 떨어지므로 2번.. 2022. 7. 15.
반응형