본문 바로가기

Algorithm33

[JavaScript] 프로그래머스 - 문자열을 정수로 바꾸기 /* 문제 : 문자열 s를 숫자로 변환하라 자료 : 부호(+,-)와 숫자로만 구성된 문자열 s 조건 : s의 길이는 1 이상 5이하입니다. s는 "0"으로 시작하지 않습니다. 계획 : Number() 쓰면 되는 거 아닌가?? - 와 + 때문인가?? 반성 : str/1 나 +str 등 다른 방법도 있다. */ const solution = (str) => { return Number(str); }; 2022. 9. 21.
[JavaScript] 프로그래머스 - 정수 내림차순으로 배치하기 처음 풀이 /* 문제 : n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 구하라 자료 : 정수 n 계획 : 정수 n을 배열로 바꾼 후, sort이용 그리고 join을 문자열 - > 숫자로 바꿔줌 숫자풀이 나누어 떨어지는 값과 몫을 이용하여 푼다. 118372 % 10을 할경우 나머지는 2가된다.이걸 새로운 배열에 집어넣는다. 그리고 몫은 118372다 . 이거를 반복문에 넣는다. 반성 : 숫자풀이로 하는 게 속도가 더 빠른데 직접 짜는 게 너무 어렵다. toString() - 문자타입으로 변환 split() - 문자열을 구분자로 잘라서 배열로 저장 sort() - 배열을 정렬 reverse() - 원소 순서를 반대로 join() - 배열 합치기 Number() - 숫자타입으로 변환 */ co.. 2022. 9. 21.
[JavaScript] 프로그래머스 - 하샤드 수 /* 문제 : 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하라 자료 : 자연수 x 조건 : 조건에 일치하면 true, 아니면 false를 반환 계획 : 자릿수의 합을 더한 값이 원래값으로 나누어떨어지는지 확인 반복문으로 각자리수를 모두 한뒤 x % sum === 0이면 true 반성 : 문자열로 변환해서 풀면 시간이 오래걸리는데 숫자로 푸는 거는 익숙하지 않다. 이 풀이를 이용해서 자연수 뒤집어 배열만들기를 다시 한 번 풀어봐야겠다. Math.floor(): 소수점 이하를 버림한다 Math.ceil(): 소수점 이하를 올림한다. Math.round(): 소수점 이하를 반올림한다. */ const sum = (number) => { if (number < 10) { return number; } .. 2022. 9. 20.
[JavaScript] 프로그래머스 - 문자열 내 p와 y의 개수 /* 문제 : 대문자와 소문자가 섞여있는 문자열 s . s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성 자료 : 알파벳으로만 이루어진 문자열 s 조건 : 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴 수를 비교할 때 대문자와 소문자는 구별하지 않습니다 계획 : 정규식을 이용해 p와 y를 몇개 가지고 있는지 확인 비교해서 true, false 리턴함 반성 : 정규표현식을 사용해서 푼 문제가 10문제가 넘어가는 거 같은데 또 정규식을 바로 사용하지못하고 검색해서 썼다. */ const solution = (str) => { let.. 2022. 9. 20.