728x90
DNA Pairing이란?
DNA 가닥에 페어링 요소가 없다면 각 문자를 가져와서 쌍을 만들고 배열로 반환한다.
즉, 누락된 요소를 제공된 문자와 일치시킨다.
기본 쌍(Base Pairs)은 AT와 CG의 쌍이다.
예시
GCG는 [["G", "C"], ["C","G"],["G", "C"]] 를 반환한다.
ATCGA는 [["A","T"],["T","A"],["C","G"],["G","C"],["A","T"]] 를 반환한다.
나의 풀이
function pairElement(str) {
let answer = [];
str.split("").map(e => {
switch(e){
case 'G' : answer.push([e, 'C']); break;
case 'C' : answer.push([e, 'G']); break;
case 'A' : answer.push([e, 'T']); break;
case 'T' : answer.push([e, 'A']); break;
}
});
return answer;
}
str를 한 글자씩 나누어 살펴본다.
'G'일 경우 answer에 ['G', 'C']를 넣는다.
'C'일 경우 answer에 ['C', 'G']를 넣는다.
똑같은 방식으로 'A'와 'T'도 처리해준다.
Intermediate Algorithm Scripting: DNA PairingPassed
(문제 출처:www.freecodecamp.org)
320x100
'알고리즘 > FreeCodeCamp' 카테고리의 다른 글
[자바스크립트/알고리즘] 프리코드캠프(FCC) - Drop it : 함수가 true일 때 까지 요소 제거 (shift) (0) | 2021.02.02 |
---|---|
[자바스크립트/알고리즘] 배열 여러개를 합친 후 유일한 값 반환하기 (set 객체, flat 함수) (0) | 2021.02.01 |
[자바스크립트/알고리즘] Pig Latin (정규식) (0) | 2021.02.01 |
[자바스크립트/알고리즘] 공백을 붙임표(하이픈)로 바꾸기 (정규식) (0) | 2021.01.19 |
[자바스크립트/알고리즘] 특정 문자열로 끝나는지 확인 / 정규식, endsWith() 이용 (0) | 2021.01.18 |