일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 다형성 (polymorphism)
- props비구조화 할당
- 첫번째 미니 프로잭트
- align-iitems
- Promise all
- 참조자료형
- probs.children
- Promise Chaining
- 재귀함수 탬플릿
- 추상화 (abstraction)
- Instanc
- 얕은복사와 깊은 복사
- 문자열을 객체로 만드는법
- 캡슐화 (encapsulation)
- async/await
- 클래스 문법 구조
- 재귀적으로 생각하기
- css 정리
- align-content
- 상속 (inheritance)
- probs
- class
- 객체지향 프로그래밍 특징
- Math.floor()
- flex-direction
- string
- 조건문
- display
- justfiy-content
- 화살표함수 기본 개념
Archives
- Today
- Total
희락코딩
프로그래머스 1단계 - 문자열 다루기 기본 본문
728x90
반응형
#문제
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
#제한 사항
s는 길이 1 이상, 길이 8 이하인 문자열입니다
#입출력예시
s | return |
"a234" | false |
"1234" | true |
# 문제 풀이 및 코드작성
처음 문제를 보자마자 isNaN 함수를 사용해서 해결하면 되겠구나 하면서 1초컷으로 풀었습니다! 테스트케이스는 통과 했지만 최종 제출에서 몇몇이 통과가 안되었습니다. 그래서 두번째 풀이로 +연산자를 활용해서 숫자 판별을 해서 진행했는데 세부케이스 11번에서 막혔습니다....
정규표현식으로 풀면 쉽게 해결할수 있지만 오기가 생겨서 11번케이스가 무엇인지 질문을 통해서 알게 되었습니다! 11번 케이스는 소수가아닌 정수로 나타내야 된다는 정보를 알게 되었습니다!
1
2
3
4
5
6
7
8
9
|
// 풀이1
function solution(s) {
return !isNaN(s)
}
// 풀이2
function solution(s) {
return +s ? s.length === 4 || s.length === 6 : false
}
|
cs |
그래서 아래와 같이 parseInt()를 사용해서 어떤 임이의 문자열이 +s를 통해서 정수일때 라고 표현하였더니 통과가 되었습니다! 자바스크립트 언어란.... 참.... 그래도 해결해서 뿌듯
1
2
3
|
function solution(s) {
return +s === parseInt(s) ? s.length === 4 || s.length === 6 : false
}
|
cs |
728x90
반응형
'프로그래밍 > 코드 문제 풀이' 카테고리의 다른 글
프로그래머스 1단계 - 나누어 떨어지는 숫자 배열 (0) | 2021.07.04 |
---|---|
프로그래머스 1단계 - 자연수 뒤집어 배열로 만들기 (0) | 2021.07.03 |
프로그래머스 1단계 - 정수 내림차순으로 배치하기 (0) | 2021.07.01 |
프로그래머스 1단계 - 수박수박수박수박수박수? (0) | 2021.06.30 |
프로그래머스 1단계 - 제일 작은 수 제거하기 (0) | 2021.06.29 |
Comments