첫시도
N=int(input())
dist=list(map(int,input().split()))
char_dist=[]
for i in range(1,N):
char_dist.append(dist[i]-dist[i-1])
for_dist=list(map(int,input().split()))
def compare(A,B,N):
for i in range(N):
if A[i]<=B[i]:
i=i+1
if i==N:
print("권병장님, 중대장님이 찾으십니다")
else:
print("엄마 나 전역 늦어질 것 같아")
break
if N==1:
print("권병장님, 중대장님이 찾으십니다")
else:
compare(char_dist,for_dist,N-1)
보기의 예제로는 잘 출력이 되는데 실행을 돌려보니까 실패가 떴다.
첫 시도에 파악하지 못한게
던지는 사람이 바로 다음사람에게 던지지 않고 다다음 사람에게도 던질 수 있다는 점이다.
따라서 (던지는 사람의 위치 + 던질 수 있는 사거리) 를 생각해야하는 문제
최종
N=int(input())
dist=list(map(int,input().split()))
if N==1:
print("권병장님, 중대장님이 찾으십니다")
exit()
else:
for_dist = list(map(int, input().split()))
max_dist=0
for i in range(N-1):
max_dist=max(max_dist,dist[i]+for_dist[i])
if max_dist>=dist[i+1]:
continue
else:
print("엄마 나 전역 늦어질 것 같아")
exit()
print("권병장님, 중대장님이 찾으십니다")
ㅎ,,