Part . 5 투 포인터 투 포인터란?? - 투 포인터는 2개의 포인터로 알고리즘의 시간복잡도를 최적화 한다.
연습문제 1. 연속된 자연수의 합 구하기 백준온라인 저지 1253번 풀이는 어떻게?
< 문제 분석하기> 1. O(nlogn)의 시간 복잡도 알고리즘을 사용하면 제한 시간을 초과한다. 2.
O(n)의 시간 복잡도 알고리즘을 사용해야 한다. 3. 시작 인덱스와 종료 인덱스를 지정하여 연속된 수를 표현한다. 4.
시작 인덱스와 종료 인덱스를 투 포인터로 지정한 후 문제에 접근한다. 1. 입력받은 값을 N에 저장한 후 코드에서 사용할 변수를 모두 초기화 한다.
결과 변수 count를 1로 초기화 하는 이유는 N이 15일 때 숫자 15만 뽑는 경우의 수를 미리 넣고 초기화 했기 때문 2. 투 포인터 이동 원칙을 활용해 배열의 끝까지 탐색하면서 합이 N이 될 경우의 수를 구한다. start_index를 오른쪽으로 한 칸 이동하는 것은 연속된 자연수에서 왼쪽 값을 삭제하는 것과 효과가...
#
while문을
#
연속된자연수의합
#
좋은수구하기
#
투포인터
#
파이썬
#
파이썬알고리즘
원문 링크 : 파이썬 : 알고리즘 - 투 포인터