티스토리 뷰
[SWEA] sw expert academy - 4831 - 전기버스
https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
문제는 위의 링크로 가면 볼 수 있습니다.
K = 한 번 충전으로 최대 이동수 , N =정류장 종점 , M =충전기가 설치된 정류장 번호
T = int(input())
for test_case in range(1, T + 1):
k,n,m = map(int, input().split())
num = list(map(int, input().split()))
charge = [0]*(n+1) // 충전소 배열 만들기
for i in num //충전소가 있는 곳에 1
charge[i] = 1
now = k // 현재 버스 위치
back = 치 // 충전 후 이동 할 수 있는 최대 수
count = 0
while True:
if now >= n: //현재 위치가 종점 이상이면 종료
result = count
break
elif charge[now] == 1 // 현재 위치에 충전소가 있다면
back = k // 있으면 뒤로 안가도 되니까 다시 원상복귀
count += 1 // 충전소 몇번 들리는지 체크
now += k
elif charge[now] == 0: // 현재 위치에 충전소가 없다면
now -= 1 // 현재 위치에서 back
back -= 1 // 이동할 수 있는 거리 줄이기
if back == 0: // 만약 이동거리가 0 즉 이동 불가면 종료
result = 0
break
print(f'#{test_case} {result}')
문제를 이해하고 구현하는데 상당히 어려운 문제다.
일단 이해는 해도 바로 코드를 만들기가 어려워서 다른 사람들의 코드를 참고했다.
거기서 가장 쉽고 직관적인 코드를 약간 변형을 했다.
'코딩공부' 카테고리의 다른 글
[wpf] 재생목록 만들기(추가, 삭제, 정렬) -1 (0) | 2021.11.22 |
---|---|
[swea]6204 & 6206 (0) | 2021.08.03 |
[swea] 6196. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] (0) | 2021.08.03 |
[python] sw expert academy & 백준 (0) | 2021.07.02 |
[python] 파이썬으로 빈 txt파일 만들기 (0) | 2021.03.19 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 텐서플로우 #tensorflow # tensor #텐서 #flow #플로우
- diagrams.net
- add button
- 재생목록
- 백준
- 4831
- 표처럼 코드가 나와요
- 버튼에 메뉴만들기
- 10869
- WPF
- 2588
- 티스토리 코드블럭
- #전기버스
- lwip
- gmapping
- 으에엑
- 빈 txt
- 어이구 두야
- 꺼저
- 네트워크 구성도
- wpf 재생목록
- 파일 올리기
- 버튼 클릭 시 메뉴
- cartographer
- SWEA
- c#
- 내 몸에서
- rosbag
- 6204
- 2163번
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함