파란색 : 풀면서 어려웠던 부분 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값 바로 전 정수까지 다 다랐다는 말이다.
'알고리즘자료구조 > 알고리즘문제' 카테고리의 다른 글
프로그래머스_C#)서울에서 김서방 찾기 (0) | 2019.08.30 |
---|---|
프로그래머스_C#)나누어 떨어지는 숫자 배열 (0) | 2019.08.29 |
프로그래머스_C#)가운데 글자 가져오기 (0) | 2019.08.27 |
프로그래머스_C#)체육복 (0) | 2019.08.26 |
프로그래머스_C#)모의고사 (0) | 2019.08.22 |