< 문제 >

 

< 정답 코드 >

 

< 설명 >

- 정답 answers의 값과 수포자의 정답 list1,2,3을 비교할 것이다.

- 비교 후 맞춘 정답을 카운트하기 위해서 count1,2,3 변수와 이 변수를 임시로 담을 answer_temp를 만든다.

- answers 가 기준이 되도록 answers의 길이만큼 수행하는 반복문

- list1,2,3 그리고 answers는 길이가 다른데, list1,2,3은 반복되므로, lastIndex에 도달했을 때, 0으로 돌아가게 하려면

  증가값 i를 각 수포자 정답 리스트의 길이로 나눠주면 가능하다.

- answer_temp에는 3명의 수포자가 맡힌 정답 갯수가 순서대로 들어있다.

- answer_temp의 index는 0~2이고, 문제에서 요구하는 정답은 1, 2, 3 중에서 답변해야하므로 person Index에 + 1을 

  해준 값이 문제에서 요구하는 n번 수포자를 가리키는 값이 된다.

 

< 배운 것 >

1) 길이가 다른 배열들이 있을 때 길이가 더 짧은 배열의인덱스 전체를 반복하면서 비교하는 로직을 짤 수 있다.

- 길이가 더 긴 배열의 길이를 반복문의 조건부로 한다.

- 길이가 더 짧은 배열과 비교할 때, 배열의 인덱스는 증감값 i를 짧은 배열의 길이(len)로 나눈 몫이다.

 

2) for a, b in enumerate(array):  형태에서 a는 인덱스, b는 a 인덱스에 해당하는 값인 걸 안다.

+ Recent posts