코드의 출현 - 6일차
4648 단어 adventofcodetypescriptjavascript
코드의 출현이 무엇인지 모른다면 매일의 도전을 발견하게 될 웹사이트입니다(매일 더 어려워집니다). 정말 재미있는 이벤트이니 꼭 참여해보세요!
저는 JavaScript 또는 TypeScript를 사용하여 연습 문제를 해결하려고 노력하고 매일 내 솔루션을 공유할 것입니다(아무도 속일 수 없도록 하루 지연됩니다!). 두 번째 부분에 대한 솔루션만 공유합니다.
6일차에는 의욕이 넘쳤습니다. 저는 챌린지 릴리스(내 시간대로 오전 6시)까지 깨어 있지 않았기 때문에 순위를 매길 수 있을지도 모릅니다!
7분 후, 나는 파트 1을 제출했습니다(아주 좋은 점수 IMO!)... 상위 100위의 대부분이 1분도 채 걸리지 않았다는 것을 깨달았습니다! 그들이 이것을 어떻게 하는지는 모르겠지만, 나는 여전히 내 연기에 만족한다.
어쨌든, 6일차에 대한 나의 해결책은 다음과 같다.
input
.split(/\r?\n\r?\n/)
.map((group) => group.split("\n"))
.map((group) => group.filter(Boolean).map((answers) => answers.split("")))
.map((group) => {
const record: Record<string, number> = {};
group.map((answers) => {
answers.map((answer) => {
record[answer] = record[answer] + 1 || 1;
});
});
return Object.keys(record).filter((x) => record[x] === group.length)
.length;
})
.reduce((acc, v) => acc + v, 0);
댓글에 자유롭게 공유해주세요!
Markus Spiske에 Unsplash의 사진
Reference
이 문제에 관하여(코드의 출현 - 6일차), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/qmenoret/advent-of-code-day-6-3841텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)