1.8 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| afd15382cdfb22c9efe8b7de | Parear DNA | 5 | 16009 | dna-pairing |
--description--
Os pares de fileiras de ADN são constituídos por pares de bases de proteínas. Os pares de bases são representados pelos caracteres AT and CG, que formam os blocos de construção da dupla hélice do ADN.
A fileira do ADN está sem o elemento de que faz par com ele. Escreva uma função que corresponda aos pares de base que faltam para a fileira de ADN fornecida. Para cada caractere na string fornecida, encontre o caractere de par de bases. Retorne os resultados em um array bidimensional.
Por exemplo, para a entrada GCG, retorne [["G", "C"], ["C","G"], ["G", "C"]]
O caractere e seu par estão emparelhados em um array, e todos os arrays estão agrupados em um array encapsulador.
--hints--
pairElement("ATCGA") deve retornar [["A","T"],["T","A"],["C","G"],["G","C"],["A","T"]].
assert.deepEqual(pairElement('ATCGA'), [
['A', 'T'],
['T', 'A'],
['C', 'G'],
['G', 'C'],
['A', 'T']
]);
pairElement("TTGAG") deve retornar [["T","A"],["T","A"],["G","C"],["A","T"],["G","C"]].
assert.deepEqual(pairElement('TTGAG'), [
['T', 'A'],
['T', 'A'],
['G', 'C'],
['A', 'T'],
['G', 'C']
]);
pairElement("CTCTA") deve retornar [["C","G"],["T","A"],["C","G"],["T","A"],["A","T"]].
assert.deepEqual(pairElement('CTCTA'), [
['C', 'G'],
['T', 'A'],
['C', 'G'],
['T', 'A'],
['A', 'T']
]);
--seed--
--seed-contents--
function pairElement(str) {
return str;
}
pairElement("GCG");
--solutions--
var lookup = Object.create(null);
lookup.A = 'T';
lookup.T = 'A';
lookup.C = 'G';
lookup.G = 'C';
function pairElement(str) {
return str.split('').map(function(p) {return [p, lookup[p]];});
}