파란색 : 풀면서 어려웠던 부분 or 고려해야 될 부분

빨간색 : 해결방법

초록색 : 느낀점

 

알고리즘문제풀이 

문제

입력된 두 정수중 큰 수와 작은 수를 구하는 과정이 포인트

 

내 풀이

삼항 연산자로 max(큰 수), min(작은 수)를 구하고 for문으로 min이 시작 값 max가 끝 값으로 순회하면서 answer에 더하도록 했다.

 

다른 사람 풀이

큰, 작은 값을 구하지 않고 while문으로 a! = b라는 조건으로 a값을 기준으로

a가 크면 -1, 작으면 +1로 해주고 있다. 이 과정이 a부터 b사이에 값을 더해주는 과정이고 마지막 결괏값을 리턴할 때 b를 더해줌으로써 a와 b까지의 값을 모두 더한 값이 된다. 

 

느낀 점

내가 문제를 보고 포인트라고 생각했던 것은 a가 b 중 누가 더 큰 값인지, 작은 값인지 체크하는 것이었는데, 시작 값이나 끝 값을 미리 정하는 것이 아닌 반복문을 통해 기준으로 잡은 값이 큰 값이면 빼고 작은 값이면 더하는 방식으로 입력받은 두수 사이를 모두 더 할 수 있었다. a!=b인 조건인 두 수가 같을 때 반복문을 빠져나가는 조건은 a값이 b값 바로 전 정수까지 다 다랐다는 말이다. 

 

 

 

반응형

+ Recent posts