T = int(input())
for tc in range(1, T+1):
# N은 버스노선의 갯수
N = int(input())
count = [0] * 5001
# 첫번째 버스부터 시작하기 위해서 range 조심
for n in range(N):
A, B = map(int, input().split())
# A번째 정류장부터 B번째 정류장까지
for j in range(A, B+1):
# count리스트에 1씩 더해줌
count[j] += 1
# P는 버스정류장의 갯수
P = int(input())
# 버스가 지나가는 버스정류장만 담을 리스트값.
bus_stop = []
# 버스정류장 번호가 인풋값으로 주어지므로
for c in range(P):
# C는 버스정류장 번호
C = int(input())
# 버스정류장 리스트에 버스정류장번호의 인덱스를 가진 값을 count 리스트에서 가져옴.
bus_stop.append(count[C])
# 리스트는 정수값이 담겨있으므로 문자로 변환하고 빈칸으로 끊어서 한줄로 출력하기.
print('#{}'.format(tc), ' '.join(map(str, bus_stop)))
🔑 아니 왜 swea는 테스트케이스를 주다 말다 하는 것이냐,,,! 자꾸 런타임 에러가 나와서 한참 고생했네,,, 아니 그럼 런타임에러 이유라도 제대로 알려주시든가요,,, 아님 테스트케이스를 다 주시면 제가 해볼거 아니예여,,,? 증말,,,🤢🤢
구글링 끝에 바꾼것은 range를 다르게 준 것 뿐이다.
for j in range(A-1, B)
이렇게 줬는데 그 이유는 A번째 정류장이 0번 정류장일리 없고 문제에도 A는 1보다 크거나 같은 수 라고 했기에 count리스트에 저장되는 위치를 조정하기 위해서(0번째 인덱스값에 1번정류장을 지나는 버스를 카운팅하고자) 한 것인데 그게 문제였다. 왤까...?🤔 문제에서 준 테스트는 그렇게 해도 잘 돌아갔는데,,,? swea에서 돌렸을땐 아예 0개 맞았다. 흠?for j in range(A, B+1)
이라고 해도 어차피 나중에 결과값은 count 리스트에서 뽑아올 것이기 때문에 상관없긴 했다.결론적으로 런타임에러는 인덱스 값을 이상하게 줘서 그런것인듯... 근데 아직 정확히 왜 그런진 모르겠다,,,
문제자체가 이해하거나 코드짜기가 어렵다기 보다는 인풋값이 너무 많고 그걸 다 받아서 사용해야하기에 헷갈려서 그런듯!