백준 2003번 수들의 합 2
< 백준 2003번 수들의 합 2 - 마포 코딩박 >
사용한 알고리즘: 투포인터
N개의 수로 된 수열이 주어지고, 이 수열의 i~j 수들의 합이 M이 되는 개수를 찾는 문제입니다. 저는 투포인터를 써서 해결했습니다.
문제풀이는 다음과 같습니다.
(1) (코드: arr[11111])
수열을 받을 배열을 넉넉히 잡아 각 수열의 수들을 저장했습니다.
(2) (코드: 15~33)
s이상 e미만의 수열의 합 sum = arr[s]+arr[s+1]+...+arr[e-1] 라 두고,
1. sum == M 인 경우 ans++ , sum+=arr[e] , e++
2. sum < M 인 경우 sum+=arr[e], e++
3. sum > M 인 경우 sum-=arr[s], s++
4. e>N 인 경우 끝
의 과정으로 계산해주었습니다.
사용한 알고리즘: 투포인터
N개의 수로 된 수열이 주어지고, 이 수열의 i~j 수들의 합이 M이 되는 개수를 찾는 문제입니다. 저는 투포인터를 써서 해결했습니다.
문제풀이는 다음과 같습니다.
(1) (코드: arr[11111])
수열을 받을 배열을 넉넉히 잡아 각 수열의 수들을 저장했습니다.
(2) (코드: 15~33)
s이상 e미만의 수열의 합 sum = arr[s]+arr[s+1]+...+arr[e-1] 라 두고,
1. sum == M 인 경우 ans++ , sum+=arr[e] , e++
2. sum < M 인 경우 sum+=arr[e], e++
3. sum > M 인 경우 sum-=arr[s], s++
4. e>N 인 경우 끝
의 과정으로 계산해주었습니다.
댓글
댓글 쓰기
긴 글 읽어주셔서 감사합니다.
궁금한게 있으시다면 댓글 달아주세요!