본문 바로가기

알고리즘

[SWEA] 전기버스 (Python)

T = int(input())
for test_case in range(1, T + 1):
    k, n, m = map(int, input().split()) #0번에서 출발해서 n번까지 이동, 최대이동 k,
    num_station = list(map(int, input().split()))
    stations = [0]*(n+1)
    
    for num in num_station:
        stations[num] += 1
    prev = pres = count = 0
    pres += k
    
    while True :
        if pres >= n :
            break
            
        if stations[pres] == 1 :
            count +=1
            prev = pres
            pres += k
        
        else :
            pres -= 1
            if prev == pres :
                count = 0
                break
       	
    print("#{} {}".format(test_case, count))

'알고리즘' 카테고리의 다른 글

[백준] 2839. 설탕 배달  (0) 2020.11.16
[프로그래머스] 124 나라의 숫자  (0) 2020.11.16
[SWEA] 숫자 카드 (Python)  (0) 2020.10.21
[SWEA] 구간 합 (Python)  (0) 2020.10.21
[SWEA] 5658. 보물상자 비밀번호 (Python)  (0) 2020.10.21