포스팅이 너무 길어져 둘로 나누게 되었다. 다음은 나머지 4문제들이다.
나이 출력
나이를 출력하는 단순한 문제다.
각도기
각에 따라 다른 결과값을 산출하는 간단한 문제다.
풀긴 했지만 식이 너무 길다. 좋지 않은 풀이다.
삼항 연산자를 이용해 간단하게 푼 solution이다. 역시 안 쓰다 보니 사용할 생각을 안 하게 된다. 익숙하게 하기 위해 이 풀이를 참고하지 않고 다시 삼항 연산자를 이용해 풀어 보았다.
답은 맞았으나 불필요한 조건식이 많이 포함되어 있다. 처음의 0 < angle과 마지막의 90 < angle은 불필요하다. 역시 자꾸 안 써 보니 사용이 서툴게 된다. 의도적으로 자주 사용해야겠다.
식은 간결해졌으나 괄호로 묶어 주면 보다 가독성이 좋아질 것 같다.
가독성이 좋아졌다.
양꼬치
정답률이 높은 순으로 풀으니 쉬운 문제가 계속 나온다. 12,000에 n을 곱하고 2,000에 k를 곱한 후, 서로 더하고 공짜인 만큼 빼 주면 될 것이다.
왜 다르지? 한참 고민했다. 식을 쓰는 과정에서 나도 모르게 answer를 양꼬치 갯수로 생각했다. 어려우면 어려워서 틀리고 쉬우면 쉽다고 방심하다 대충 써서 틀린다. 한심하기 짝이 없다. 앞으로는 절대 이런 어이없는 실수를 해서는 안 된다...
제대로 결과가 나왔다.
의도적으로 길게 작성한 풀이다. 뭔가 있어 보이려고 할 때는 좋겠으나 실용적 관점에서는 불필요해 보인다.
점의 위치 구하기
Lv.0 문제치고 지문이 길긴 하지만, 결국 사분면에 따라 다른 값을 return하는 간단한 문제다. 삼항 연산자를 다시 사용해 볼 좋은 기회다.
라고 생각했으나... 정답률 75%가 나온다. 뭔가 하나가 틀렸다. 뭐가 틀렸는지 전혀 원인을 찾지 못했다. 그래서 테스트 케이스를 추가해 봤다.
3사분면이 왜? 아...... 그렇게 볼 때는 모르겠더니 이걸 보고서야 바로 눈에 들어온다. 정말 신기하다.
역시 삼항 연산자는 낯설다... 익숙하지 않은 것을 쓰다 보니 논리를 작성하는 데 집중해 실수했나 보다(물론 아직 공부 기간이 짧아 다른 문법도 그다지 오래 쓴 것도 아니다). 가독성을 보완하기 위해 괄호도 쳐 줘야 한다. 안 치면 본인은 알아도 직접 짜지 않은 사람 입장에서는 무슨 논리인지 금방 알아보기가 힘들다.
의외로 이번 문제는 삼항 연산자 풀이가 좋아요를 가장 많이 받지 않았다. 삼항 연산자의 코드가 짧지만 가독성이 떨어지는 단점은 있는 것 같다.
'Coding Test' 카테고리의 다른 글
Java 코딩테스트 연습 7일차 (프로그래머스 스쿨 Lv.0, 1088점) (0) | 2023.03.13 |
---|---|
Java 코딩테스트 연습 6일차 (프로그래머스 스쿨 Lv.0, 1073점) (0) | 2023.03.12 |
Java 코딩테스트 연습 5일차(1) (프로그래머스 스쿨 Lv.0, 1055점) (0) | 2023.03.11 |
Java 코딩테스트 책 구입, 연습 4일차 (프로그래머스 스쿨 Lv.0, 1045점) (0) | 2023.03.10 |
Java 코딩테스트 연습 3일차 (프로그래머스 스쿨 Lv.0, 1037점) (2) | 2023.03.09 |