<aside> ❗ ‘여러 풀이 한눈에 보기’는 기술에 대해 설명하기보다 다양한 풀이들을 소개하는 시리즈이다. 기존 글들과 비교해서 다소 건조할 수 있겠지만, 나열식으로 빠르고 간단하게 핵심만 콕 짚는 것이 이 시리즈의 컨셉이다. 바로 출발해 보자.
</aside>
어떤 코드가 잘 쓴 코드고 어떤 코드가 나쁜 코드인지 가려내고 지적하려는 목적이 아니다. 다양한 풀이 방법을 보고 배우려는 목적이다.
사실 당연하게도 사람마다 풀이가 너무 제각각이기 때문에 따로 코드를 제공하지 않고 공통점만을 빠르게 짚고 넘어가겠다. 누가 최초로 풀었는지 특정하기 힘들고 여러 사람이 같은 생각을 할 수 있다는 생각에서도 그렇게 하였다.
int
배열을 만든다.int
카운터를 만든다.for
loop를 통해 배열로 입력값을 읽어들인다.for
loop를 만들어서,
if
문으로 올라가는 배열인지 내려가는 배열인지 확인하고, 그 분기에 따라 그에 맞는 카운터 변수를 증가시킨다."descending"
, 올라가는 카운터가 목표된 숫자와 같다면 "ascending"
, 둘 다 아니라면 "mixed"
를 출력한다.이렇게 푼 풀이도 많았다.
카운터 대신 상행인지 하행인지 저장하는 플래그를 두 개 만들어 출력하는 방법도 있었다. 그 플래그의 값은 for문에서 검사하여 바뀐다. 둘 다 아니라면 섞임을 출력할 것이다.