정구리의 우주정복
4831. [파이썬 S/W 문제해결 기본] 1일차 - 전기버스 본문
반응형
문제의 저작권은 SW Expert 아카데미 에 있습니다
t=int(input())
for i in range(t):
loc = 0 #현재 위치
pre_loc=0 #가상의 위치
count = 0
bus=[int(x) for x in input().strip().split(' ')] #최대이동 가능 , 정류장 수 , 충전기 개수
charger = [int(x) for x in input().strip().split(' ')] #충전기 어디어디 있는지 정류장 번호
line = [0]*(bus[1]+1) #버스 노선개수에 대한 리스트
for j in range(len(charger)):
line[charger[j]] +=1
while loc <= len(line):#location 이 최대값보다 작을동안 실행
char_loc =[]
pre_loc = loc
for k in range(bus[0]): #최대이동가능거리
if pre_loc+1 < len(line):
if line[pre_loc+1] ==0:
pre_loc += 1
elif line[pre_loc+1] == 1:
char_loc.append(pre_loc+1) #몇번째에 들어있었는지 넣어주기
pre_loc +=1
else :
break
if pre_loc +1 ==len(line) :
break
else :
if len(char_loc) == 0:
count = 0
break
elif len(char_loc) >0:
loc = char_loc[-1]
print('#'+str(i+1)+' '+str(count))
소스코드가 너무 더럽다 ㅜㅜㅜㅜ 당연히 틀리려니 .. 했는데 한번에 Pass 가 되어서 놀람 ..
pre_loc 이라는 가상의 좌표와 loc 이라는 실제 좌표를 요리조리 해서 풀었다
반응형
'ALGORITHM > SOLVE' 카테고리의 다른 글
4835. [파이썬 S/W 문제해결 기본] 1일차 - 구간합 (0) | 2020.05.09 |
---|---|
4834. [파이썬 S/W 문제해결 기본] 1일차 - 숫자 카드 (0) | 2020.05.09 |
4828. [파이썬 S/W 문제해결 기본] 1일차 - min max (0) | 2020.05.08 |
[Code Up] 코드업 기초 100제 파이썬 1081-1099 (1097없음) 풀이 (0) | 2020.05.02 |
[Code Up] 코드업 기초 100제 파이썬 1056-1080 풀이 (0) | 2020.05.01 |
Comments