안녕하세요 연하입니다.
오늘은 프로그래머스 0단계 정답률 89% 문제를 풀어봤습니다.
정답 코드입니다.
1. 각도기
제가 처음 실수했던 부분이
0<angle<90
이런 방식으로 부등호를 작성했는데 JS에선 0<angle && angle<90 으로 작성해야하네요.
언어마다 문법이 약간씩 다르니 이부분 주의해주시면 되겠습니다.
function solution(angle) {
var answer = 0;
if(angle<90){
answer = 1
}
else if(angle === 90){
answer = 2
}
else if(angle<180){
answer = 3;
}
else answer =4;;
return answer;
}
2. 짝수의 합
처음엔 처음부터 while로 전체를 반복했는데 시간초과가 나오네요.
function solution(n) {
var answer = 0;
if(n%2 == 0){//짝수일 때
let p =n/2;
while(p){
answer = p + answer;
p = p-1;
}
}
else {
let p =(n-1)/2;
while(p){
answer = p + answer;
p = p-1;
}
}
return answer*2;
}
(수정!!)
공식을 이용하면 좀더 빠르게 계산할 수 있습니다.
n이하의 수를 모두 더하는 공식은 n(n+1)/2 입니다.
이를 이용하게 되면
function solution(n) {
var answer = 0;
answer = Math.floor(n/2)*(Math.floor(n/2)+1);
return answer;
}
'코테 준비 > [JS] 프로그래머스' 카테고리의 다른 글
[프로그래머스 0단계 :JS] 작성일 기준 정답률 86% (2) | 2022.11.22 |
---|---|
[프로그래머스 0단계 :JS] 작성일 기준 정답률 87% (0) | 2022.11.06 |
[프로그래머스 0단계 :JS] 작성일 기준 정답률 88% (0) | 2022.11.06 |
[프로그래머스 0단계 :JS] 작성일 기준 정답률 90% (0) | 2022.11.05 |
[프로그래머스 0단계 :JS] 옹알이(1) -작성일 기준 정답률 21% (0) | 2022.11.04 |