공짜 디저트
시간 제한2초메모리 제한512 MB
a < b이고 a + b = P이며 a, b, P 세 수의 십진수 자릿수가 서로 겹치지 않는 순서쌍을 세고, 최대 5000개까지 출력한다.
문제
퀴도는 매일 후고의 식당에서 점심을 먹는다. 이 식당의 가격은 모두 정수이고, 1 이상의 모든 정수 가격마다 그 가격의 음료가 적어도 하나, 주요리가 적어도 하나 있다.
계산서에는 매일 세 수가 찍힌다. 음료 가격, 주요리 가격, 합계 금액이다. 후고는 퀴도가 계산 문제를 좋아한다는 것을 알고, 계산서가 아래 세 조건을 모두 만족할 때마다 디저트를 공짜로 준다.
- 계산서가 퀴도가 전에 받은 어떤 계산서와도 같지 않다.
- 음료 가격이 주요리 가격보다 작다.
- 세 수 중 하나에 쓰인 자리 숫자는 나머지 두 수에 쓰이지 않는다. 즉 음료 가격, 주요리 가격, 합계 금액은 같은 자리 숫자를 함께 쓰지 못한다.
퀴도는 예산을 지키느라 매일 같은 금액을 낸다. 공짜 디저트를 최대 몇 번 받을 수 있는지 세어라.
입력
첫째 줄에 퀴도가 매일 내는 합계 금액 가 주어진다 ().
출력
첫째 줄에 합계 금액이 항상 일 때 퀴도가 받을 수 있는 공짜 디저트의 최대 횟수를 출력한다.
다음 줄부터 공짜 디저트를 받는 계산서를 음료 가격이 커지는 순서로 한 줄에 하나씩 출력한다. 각 줄에는 음료 가격과 주요리 가격을 공백으로 구분해 쓴다. 합계 금액 는 모든 계산서에서 같으므로 다시 쓰지 않는다.
공짜 디저트를 받는 계산서가 5000개보다 많으면 앞의 5000개만 출력한다. 첫째 줄에는 그래도 전체 개수를 쓴다.