🧠 문제 요약
- 두 정수 A와 B를 입력받은 다음, A를 B로 나눈 값을 출력하는 문제
- 출력은 소수점 아래 10자리까지 정확하게 표현해야 한다.
- 입력: A, B( 0 < A, B < 10)
- 출력: A를 B로 나눈 값을 소수점 10자리까지 출력
✅ 실행 예시 및 결과
입력: 1 3
출력: 0.3333333333
✍️ 내 풀이
- require('fs').readFileSync('/dev/stdin').toString()로 입력 처리
- split()으로 A와 B 분리 후 parseInt() 처리
💻 내가 푼 코드
const input = require('fs').readFileSync('/dev/stdin').toString().split(' ');
const A = parseInt(input[0]);
const B = parseInt(input[1]);
console.log(A/B)
📎 남이 푼 코드
// 백준 1등 코드
s=require('fs').readFileSync('/dev/stdin')+'';console.log(s[0]/s[2])
- s=require('fs').readFileSync('/dev/stdin')+'': 입력을 문자열로 읽어서 변수 s에 저장
- s[0]: 문자열의 첫 번째 문자
- s[1]: 문자열의 세 번째 문자
- JavaScript의 암묵적 타입 변환을 이용해 문자를 숫자로 자동 변환하여 나눗셈 수행
- 변수 선언을 최소화하여 메모리 사용 절약!!
- split(), parseInt() 과정을 생략하여 실행 시간 단축
- 한 줄로 모든 처리를 완료하여 코드 길이 최소화
- "A B" 형태의 한 자리 수만 처리 가능(입력 형식에 매우 의존적)
- 두 자리 수나 다른 형식의 입력에서는 오작동(확장성 부족)
- 오류 발생 시 원인 파악이 힘듦(디버깅 어려움)
🔍 회고 & 배운 점
- 1등 코드를 보고 "코드 골프"라는 개념을 처음 알게 되었다
- 짧다고 항상 좋은 코드는 아니구나.....
- javascript의 암묵적 타입변환은 잘 생각 못했는데.... 이건 멋져
- 나는 기본에 충실하게 코드짜기!!!
반응형
'Study > Coding Test' 카테고리의 다른 글
| [baekjoon] 별 찍기 - 1(JavaScript) (2) | 2025.08.05 |
|---|---|
| [beakjoon] 두 수 비교하기(JavaScript) (2) | 2025.08.04 |
| [프로그래머스] 문자열 내 p와 y의 개수(JavaScript) (2) | 2025.08.03 |
| [프로그래머스] 2016년(JavaScript) (1) | 2025.08.02 |
| [프로그래머스] 기사단원의 무기(JavaScript) (1) | 2025.08.01 |