카일_

Algorithm

Algorithm/백준

백준 | #10998 "AxB"

문제 나의 풀이 const fs = require("fs"); const filePath = process.platform === 'linux' ? '/dev/stdin' : '.input.txt'; let input = fs.readFileSync(filePath).toString().split("\n"); input = input[0]; input = input.split(" ").map((item) => +item); console.log(input[0] * input[1]); 마무리 숫자배열로 변환해서 풀이하는 간단한 사칙연산 문제였다.

Algorithm/백준

백준 | #9498 "시험 성적"

문제 나의 풀이 const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : '.input.txt'; let input = fs.readFileSync(filePath).toString(); if (90

Algorithm/백준

백준 | #18108 "1998년생인 내가 태국에서는 2541년생?!"

문제 나의 풀이 const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : '.input.txt'; let input = fs .readFileSync(filePath) .toString() .trim(); console.log(input - 543); 마무리 문제에 답이 나와있다. 불기년도를 구하기 위해 서기에서 543년도를 뺀 값을 출력하는 문제였다.

Algorithm/프로그래머스

프로그래머스 | #Lv1 "부족한 금액 계산하기"

문제 설명 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다. 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요. 단, 금액이 부족하지 않으면 0을 return 하세요. 제한 조건 놀이기구의 이용료 price : 1 ≤ price ≤ 2,500, price는 자연수 처음 가지고 있던 금액 money : 1 ≤ money ≤ 1,000,000,000, money는 자연수 놀이기구의 이용 횟수 ..

Algorithm/프로그래머스

프로그래머스 | #Lv1 "약수의 개수와 덧셈"

문제 설명 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 제한 조건 1 ≤ left ≤ right ≤ 1,000 나의 풀이 function solution(left, right) { let answer = 0; for (let i = left; i

Algorithm/프로그래머스

프로그래머스 | #Lv1 "문자열 다루기 기본"

문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 조건 s는 길이 1 이상, 길이 8 이하인 문자열입니다. s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다. 나의 풀이 function solution(s) { if (s.length === 4 || s.length === 6) { if (parseInt(s) == s) { return true; } else { return false; } } else { return false; } } 마무리 처음엔 typeof 를 사용해서 문자인지 숫자인지 구분하려했다. 하지만..

Algorithm/프로그래머스

프로그래머스 | #Lv1 "문자열 내림차순으로 배치하기"

문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 제한 조건 str은 길이 1 이상인 문자열입니다. 나의 풀이 function solution(s) { return s.split('').sort().reverse().join(''); } 마무리 배열의 함수들을 사용해서 간단하게 해결 할 수 있는 문제였다. 한가지 재밌는 점은 sort() 로 정렬할 때 영문은 소문자보다 대문자를 먼저 정렬한다는 점이다.

Algorithm/프로그래머스

프로그래머스 | #Lv1 "내적"

문제 설명 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]b[0] + a[1]b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) 제한 조건 a, b의 길이는 1 이상 1,000 이하입니다. a, b의 모든 수는 -1,000 이상 1,000 이하입니다. 나의 풀이 function solution(a, b) { var answer = 0; for(let i=0; i acc += cur*b[idx], 0) return answer; } 마무리 내적은 서로 다른 두 수열의 자릿수 마다 곱해서 다 더한 값을 말한다. 나는 빈 숫자에 각 수열의 인덱스를 차례..

Algorithm/프로그래머스

프로그래머스 | #Lv1 "없는 숫자 더하기"

문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 조건 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 원소 ≤ 9 numbers의 모든 원소는 서로 다릅니다. 나의 풀이 function solution(numbers) { let answer = 0; for (let i = 0; i cur + acc, 0); } 마무리 문제 해석과 어떻게 해야할지 까지는 생각했었다. 0부터 증가시키면서 배열 안에 있는지 확인하기. 근데 배열 함수들을 많이 익히지 못한 상태에서 문제를 마주하니 내가 알고있는 함수만으로..

Algorithm/프로그래머스

프로그래머스 | #Lv1 "가운데 글자 가져오기"

문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한 조건 s는 길이가 1 이상, 100이하인 스트링입니다. 나의 풀이 function solution(s) { let answer = ''; if (s.length % 2 == 0) { let even = Math.floor(s.length / 2); let evenAnswer = [s[even - 1], s[even]].join(''); return evenAnswer; } else { let odd = Math.floor(s.length / 2); return s[odd]; } } 다른 풀이 function solution(s) { const mid = Ma..