팀 빌딩
시간 제한1초메모리 제한1024 MB
직원 n명과 팀 크기 k가 주어질 때, 이틀 모두 같은 팀에 속하는 쌍의 최소 개수를 구합니다.
문제
대형 소프트웨어 회사의 경영진이 전체 명의 직원을 대상으로 팀 빌딩 교육을 열기로 했다. 교육은 이틀 동안 진행되며, 참가자들은 매일 명씩 한 팀을 이뤄 여러 과제를 수행한다. 직원 수가 로 나누어떨어지므로, 매일 정확히 개의 팀이 명씩 만들어진다. 두 날 모두 팀을 임의로 나눌 수 있으며, 둘째 날의 팀 구성은 첫째 날과 전혀 무관해도 된다.
주최 측은 날마다 사람을 팀에 배정하는 일정을 짜고 있다. 교육의 목적 중 하나는 직원들이 아주 다양한 사람과 같은 팀에서 일하는 모습을 보는 것이므로, 배정에는 자연스러운 조건이 붙는다. 두 날 모두 같은 팀에 속하는 사람들의 쌍의 수가 가능한 한 적어야 한다.
이렇게 사람을 나누는 일은 얼핏 보기보다 어렵다. 두 날 모두 같은 팀이 되는 직원 쌍의 최소 개수를 구하라.
입력
입력은 한 줄이며, 두 정수 과 가 주어진다 (, , 은 로 나누어떨어진다). 은 회사의 직원 수이고, 는 교육 두 날 동안 한 팀의 인원 수이다.
출력
두 날 모두 같은 팀에 속하는 직원 쌍의 최소 개수를 출력한다.
힌트
첫 번째 예시에서는 첫째 날 (2, 4, 9), (1, 3, 8), (5, 6, 7)로 나누고, 둘째 날 (2, 5, 8), (3, 4, 7), (1, 6, 9)로 나눌 수 있다. 이 배정에서는 두 날 모두 같은 팀이 되는 쌍이 하나도 없다.
두 번째 예시에서는 첫째 날 (1, 3, 5, 7)과 (2, 4, 6, 8)로 나누고, 둘째 날 (1, 2, 7, 8)과 (3, 4, 5, 6)으로 나눌 수 있다. 그러면 네 쌍 (1과 7, 2와 8, 3과 5, 4와 6)이 두 날 모두 같은 팀에 속한다. 이보다 나은 해는 없음을 보일 수 있다.