주어진 문자열이 알파벳인지 구분하라
Determine if the given letter is an alphabet.
type IsAlphabet<S extends string> =
string extends S?false:
S extends Lowercase<S>&Uppercase<S>?false:true
S가 string과 같은지 판별한 후, 맞다면 false를 반환한다.
string이 아니라면 S가 Lowercase<S>&Uppercase<S>인지 확인한다.
Uppercase와 Lowercase는 해당 리터럴 문자열의 모든 문자를 대/소문자로 바꾼다.
만약 S가 알파벳이라면, 두 제네릭을 적용한 값의 교집합이 공집합이 나온다.
그 지점을 이용한 풀이이다.