Today's special moments become memories of tomorrow.

BOJ

[백준 17281번] ⚾ (java)

lotus lee 2021. 2. 15. 17:59

백준 17281번 

 

17281번: ⚾

⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종

www.acmicpc.net

 

문제 자체는 어렵지 않으나, 평소 스포츠 룰을 잘 몰라서 문제를 이해하는데 시간이 좀 걸렸다.

 

핵심은 아홉번의 차례 동안, 1번 타자는 4번째로 고정되고 나머지 타자들은 순서를 정해줘야 한다.

이 부분은 순열에 해당하므로 재귀를 이용하여 브루트포스로 모든 케이스를 구하였다.

 

9번째까지 모든 순서를 정하고 나면 solve() 메서드를 호출해서 N번의 이닝이 모두 끝날 때까지 score를 갱신시켜준다.

매번 타자가 공을 던진 후, 갱신된 score을 max와 비교하여 더 크면 max를 갱신시켜 주었다.

 

 

소스 코드 :