์ํฌ์ ์ผ์ธ๋ฐฉ์ ๋ชจ์๊ณ ์ฌ์ ์ํ ๋ฌธ์ ๋ฅผ ์ ๋ถ ์ฐ์ผ๋ ค ํ๋ค. ์ํฌ์๋ 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง ๋ค์๊ณผ ๊ฐ์ด ์ฐ๋๋ค. 1๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, โฆ 2๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, โฆ 3๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, โฆ 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง์ ์ ๋ต์ด ์์๋๋ก ๋ค์ ๋ฐฐ์ด answers๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๋ง์ ๋ฌธ์ ๋ฅผ ๋งํ ์ฌ๋์ด ๋๊ตฌ์ธ์ง ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก ํจ์๋ฅผ ์์ฑํ๋ผ.
def mok_exam(answers):
j = 0
k = 0
pattern2 = [1, 3, 4, 5]
pattern3 = [3, 1, 2, 4, 5]
score = [0, 0, 0]
result = []
for i in range(0, len(answers)):
if answers[i] == i % 5 + 1:
score[0] += 1
if i % 2 == 0:
if answers[i] == 2:
score[1] += 1
if answers[i] == pattern3[j % len(pattern3)]:
score[2] += 1
k += 1
else:
if answers[i] == pattern2[k % len(pattern2) - 1]:
score[1] += 1
if answers[i] == pattern3[j % len(pattern3)]:
score[2] += 1
j += 1
max_score = max(score)
i = 0
for s in score:
if max_score == s:
result.append(i + 1)
i += 1
return result
์กฐ์กํ๊ธฐ ๊ทธ์ง์๋คโฆ ๋น์ฅ ๋ด๊ฐ ๋ด์ผ ์ผ์ด๋์ ๋ด๋ ์ดํด ๋ชปํ ๋งํผ ๊ธธ๊ณ ํํธ์๋ค.
for๋ฌธ์ ๋๋ฉด์ index๋ฅผ ๋ณ์๋ก ๋ฐ๋ก ์ฒ๋ฆฌํด์ฃผ๋ค๋ณด๋ ์ด๋ ๊ฒ ๊ธธ์ด์ก๋ค. ๋ ํจํด๋ง๋ค ๋ค๋ฅด๊ฒ ๋น๊ตํ๋๋ผ ์ธ๋ฐ์๋ if๋ฌธ์ด ๋ง์์ก๋ค.
๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๊ณ ๋์์ผ ํ์ด์ฌ์ enumerate()
๋ฅผ ๊ธฐ์ตํด๋๋ค.
์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ ๋๊ฐ ํด๋น ์ธ์ด์ ๊ธฐ๋ณธ ๋ฌธ๋ฒ์ ๊ฐ์ฅ ์ ๊ฒฝ์ธ ์ ์๋ ์๊ฐ์ธ ๊ฒ ๊ฐ๋ค.
def mok_exam(answers):
pattern1 = [1,2,3,4,5]
pattern2 = [2,1,2,3,2,4,2,5]
pattern3 = [3,3,1,1,2,2,4,4,5,5]
score = [0, 0, 0]
result = []
for idx, answer in enumerate(answers):
if answer == pattern1[idx%len(pattern1)]:
score[0] += 1
if answer == pattern2[idx%len(pattern2)]:
score[1] += 1
if answer == pattern3[idx%len(pattern3)]:
score[2] += 1
for idx, s in enumerate(score):
if s == max(score):
result.append(idx+1)
return result
enumerate
๋ฅผ ์ด์ฉํ๋ฉด index์ value๋ฅผ ํจ๊ป ์ฒ๋ฆฌํ ์ ์์ด ๋ถ๊ฐ์ ์ธ ๋ณ์ ์ ์ธ์ด ํ์ํ์ง ์๋ค.
๋ํ ์ธ๊ฐ์ง ๋ต์ ํจํด์ ๋ํด ์ ํํ ์ ์๋ฅผ ํ๊ณ index๋ฅผ ๊ฐ ํจํด์ ๊ธธ์ด๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํด์ฃผ๋ฉด ํจ์ฌ ๊ฐ๊ฒฐํ๊ฒ ๋ต์์ ์ป์ ์ ์๋ค.
ํ์ด์ฌ์ ๋ด์ฅ ํจ์๋ฅผ ์ ์ฌ์ฉํ ์ ์๋๋ก ๋ง์ ์ฐ์ต์ ํด์ผ๊ฒ ๋ค.