목록문제풀이/Programmers (42)
말랑한 하루
[ 학습 내용 ] 키패드를 층과 좌, 중, 우로 분할했을 때 해당되는 숫자는 층은 몫으로, 위치는 3n-2, 3n-1, 3n으로 분류할 수 있다. 위 식의 경우 나머지연산을 통해 분류는 가능하나, 우측 몫이 나누어 떨어지는 부분으로 인해 층분류에 알맞지 않았다. 그래서 키패드 전체 수를 1씩 낮춰 2n, 2n+1, 2n+2로 식을 세워 층분류, 좌우분류가 가능하게 만들었다. 전체적인 키패드의 모습은 다음과 같다. [ 소스 코드 ] function solution(numbers, hand) { var answer = ''; let left_hand = 9, right_hand = 11; const onLeft = (number) => { answer += "L"; left_hand = number; } c..
[ 학습 내용 ] 정규표현식 활용 - ReqExp() : ReqExp 객체를 생성합니다. 리터럴 표기법인 경우 두 빗금(//)을 쓰며 따옴표(")를 사용하지 않음 생성자 표기법인 경우 따옴표(")를 쓰며 두 빗금(//)으로 감싸지 않음 - flag : 단독 및 중첩사용이 가능함. d : 부분 문자열 일치에 대해 인덱스를 생성 g : 전역 탐색 i : 대소문자 구분하지 않음 m : 여러줄에 걸쳐 탐색 s : 개행 문자가 . 과 일치함 u : "unicode", 패턴을 유니코드 코드 포인트의 시퀀스로 간주함 y : "접착"탐색, 대상 문자열의 현재 위치에서 탐색을 시작함 [ 소스 코드 ] function solution(s) { var answer = s.toLowerCase(); var number = [..