링크 : https://www.acmicpc.net/problem/18311
- 문제


- 소요시간:
- 설계하기(접근방법)
1. 입력받기
2. 입력받은 리스트를 누적 합으로 코스 리스트 생성
3. 리스트를 거꾸로 누적하여 리버스_코스 리스트를 생성
4. 조건문으로 편도 거리보다 작으면 코스 리스트 내에서 구간 찾기
아니라면 리버스_코스 리스트에서 구간 찾기
5. 조건에 충족하면 break 후 출력하기
- 코드(출력)
n , k = map(int, input().split())
course = list(map(int,input().split()))
course_length = []
course_sum = 0
for i in range(n):
course_sum += course[i]
course_length.append(course_sum)
revese_course_length = []
course_sum = 0
for i in range(n):
course_sum += course[n - 1 - i]
revese_course_length.append(course_sum)
if k >= course_length[-1]:
reverse_length = k - course_length[-1]
for i in range(n):
if reverse_length < revese_course_length[i]:
print(n -i)
break
else:
for i in range(n):
if k < course_length[i]:
print(i + 1)
break
- 얻어갈 부분
알고리즘을 오랜만에 푸니 문법, 문제 풀이 모두 많이 느려졌다. 구현을 반복하면서 적응을 좀 해야할 것 같다
'알고리즘(백준) > 구현' 카테고리의 다른 글
| [알고리즘/구현] 11723번 : 집합 - python (1) | 2023.12.26 |
|---|---|
| [알고리즘/구현] 2979번 : 트럭주차 - python (0) | 2023.12.26 |
| [알고리즘/구현] 16926번 : 배열 돌리기 - python (0) | 2023.05.09 |
| [알고리즘/구현] 2615번 : 오목 - python (0) | 2023.05.02 |
| [알고리즘/구현] 15787번 : 기차 - python (0) | 2023.04.27 |