#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http 제목작년중간고사 SWCON104-00 1번 예시답안 및 해설입니다.2019-10-16 23:15작성자쉽게풀어쓰는..#문제 순서대로 푸는 예시입니다. 순서대로 안풀면 더 쉽고, 이 풀이보다 분명히 더 좋은 방식도 존재합니다def mergeAndSortList(list_a,list_b): sum = list_a + list_b endlist = len(sum)-1 #중복값을 빼주면 list 길이도 달라져 반복횟수도 달라진다. 그것을 위해 만든 변수 #list의 마지막 index를 가리킨다 index = 0 #list의 처음부터 올라가는 수 #그냥 index라고 보면 된다. while index != endlist: #인덱스가 list의 마지막에 도달하면 중단 repeatstr = sum[index] #그 자리의 문자나 숫자를 저장 repeatnum = sum.count(repeatstr) # 그 문자의 반복횟수 저장 if repeatnum > 1: #1번이상 반복되면 for i in range(repeatnum - 1): #총 반복횟수보다 1번 적게 sum.remove(repeatstr)# 제거한다. #remove같은 경우 앞에것부터 제거한다. 그럼 그 index자리에 다른 값이 오게 되는데 #이 때 index를 +1해주면 그 값은 비교하지 않고 넘어가버린다. endlist -= 1 #그래서 여기서는 list길이가 1 줄었다는 것만 한다. else: index += 1 #위와 달리 반복되는게 없으므로 index를 올려준다. sum.sort()#반복이 끝나면 sort해준다 return sum#밑의 코드는 확인용 코드(답을 제출 시 이것까지 제출하면 안됨!)a=[1,5,1,2,5,2,6,7,33,1]b=[1,77,6,33]c = mergeAndSortList(a,b)print(c)#만약 remove때문에 이해가 안가시면 help(list.remove)를 쳐서 읽어보시길 바랍니다.틀린부분 있으면 피드백 부탁드립니다. 목록수정삭제답변글쓰기 댓글 [4] 댓글작성자(*)비밀번호(*)내용(*) 댓글 등록 더보기이전Quiz2의 답이 맞는지 알고싶습니다.a2019-10-17다음구구단 질문입니당구구992019-10-16 Powered by MangBoard | 워드프레스 쇼핑몰 망보드