[백준 11659번] 구간 합 구하기 (Python)
·
Pro Developer/BaekJoon(DataStructure & Algorithm)
Do it! 알고리즘 코딩테스트: 파이썬 편과 자료구조 과목 학습 후 정리한 포스팅 입니다. 이번 포스팅에서는 백준 11659번에 대해 학습힙니다. I) 문제 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. II) 입력 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. III) 출력 총 M개의 줄에 입력으로 주어진 i번째 수부터 j번째 수까지 합을 출력한다. IV) 제한 1 ≤ N ≤ 100,000 1 ≤ M ≤ 100,000 1 ≤ i ≤ j ≤ N V) 트러블 슈팅 1 N, M = map(int..
[알고리즘] 시간 복잡도 (Python)
·
Pro Developer/Algorithm
Do it! 알고리즘 코딩테스트: 파이썬 편과 자료구조 과목 학습 후 정리한 포스팅 입니다. 시간 복잡도는 알고리즘 선택의 기준이 된다. 시간 복잡도는 주어진 문제를 해결하기 위한 연산 횟수를 말한다. I) 대표적인 시간 복잡도 유형 - 빅-오메가(Big - Ω) : 최선일 때의 연산횟수를 나타낸 표기법 - 빅-세타(Big - θ) : 보통일 때의 연산횟수를 나타낸 표기법 - 빅-오(Big - O) : 최악일 때의 연산횟수를 나타낸 표기법 🍀코딩 테스트에서는 빅-오(Big - O)를 기준으로 수행 시간을 계산해야 한다. 응시자가 작성한 프로그램으로 다양한 테스트 케이스를 수행해 모든 케이스를 통과해야 합격으로 판단하기 때문이다. 그렇다면 빅-오(Big - O) 시간 복잡도에 대해 구체적으로 알아보자. I..