문제 설명
A pangram is a sentence that contains every single letter of the alphabet at least once. For example, the sentence "The quick brown fox jumps over the lazy dog" is a pangram, because it uses the letters A-Z at least once (case is irrelevant).
Given a string, detect whether or not it is a pangram. Return True if it is, False if not. Ignore numbers and punctuation.
해결 방법
1. string을 소문자로 바꾸어 준다.
2. 알파벳 배열을 구한다.
3. string 내에 알파벳이 존재하는지 확인한다.
4. 만약 하나라도 존재하지 않는다면 false를 리턴한다.
5. 모두 존재한다면 true를 리턴한다.
function isPangram(string){
let str = ''
string = string.toLowerCase()
for (let i = 97; i <= 122; i++) {
str += String.fromCharCode(i)
}
for (const i of str){
if ( ! string.includes(i)){
return false
}
}
return true
}
소문자 변경 : string.toLowerCase()
알파벳 호출 : String.fromCharCode() -> 97 ~ 122 까지가 알파벳 소문자를 의미한다.
논리 연산자 : not == ! -> 자바 스크립트에서는 ! 가 not을 의미한다.
존재여부 확인 : string.includes()
파이썬과 문법이 달라서 일부 헷갈리긴 했지만 그래도 재미있게 풀었다.
다른 사람들의 답을 확인했는데 정말 다양하게 풀었더라. 잘 모르는 함수나 메서드들이 많아 잘 이해는 못했지만 파이썬과 비교하여 접근법이 다양하다는 것은 느낄 수 있었다.
레퍼런스
'나는 이렇게 학습한다 > Algorithm & SQL' 카테고리의 다른 글
Find the next perfect square! (0) | 2022.02.25 |
---|---|
Exes and Ohs (0) | 2022.02.24 |
The Hashtag Generator (0) | 2022.02.22 |
Count characters in your string (0) | 2022.02.21 |
Human Readable Time (0) | 2022.02.20 |