가바보 구 드들 보면 문 많 나 구 if 문 복된 경가 많다.
문 나는 것나 구가 반복되는 것나 모두 "나 "(
BadSmell )다. 라 나 가 나면 바로바로 를 다. 대, 반복되는 문 블 로그래밍(Table/Data Driven Programming)로 결 다.

그리고, 고 구들 극로 기 바랍다. 다그램나, 는 x,y 를 는 것, 브루 문를 문(subproblem)로 나는 것 륭 고 구가 됩다 -- 문 복를 낮기 때문.
대, 다과 같 문가 겠:
- 로부 력료 고 기
- 둘 가 겼는 단기
- 람로 긴 , 기
- 결과 보기
~cpp GAWI=1 BAWI=2 BO=3 def getWinner(p1,p2): """return 1 when p1 wins, 2 when p2 wins, 0 when a tie""" if p1>=p2: return p1-p2 else: return p1-p2+3 기 단 더 리링 가능까? def getWinner(p1,p2): """return 1 when p1 wins, 2 when p2 wins, 0 when a tie""" return (p1+2*p2)%3 >>> getWinner(GAWI,BO) 1 >>> getWinner(BO,GAWI) 2 >>> getWinner(BAWI,GAWI) 1 >>> getWinner(BO,BO) 0