다양한 노래
시간 제한2초메모리 제한512 MB
가수마다 최소 한 곡을 부르고 모든 곡이 한 번 이상 불리도록 공연 목록을 고릅니다. 가수별, 곡별로 같은 언어는 한 번만 씁니다.
문제
현대 사회에서는 다양성이 큰 관심사이며, 특히 언어의 다양성이 그렇다. 그래서 이번 장기 자랑은 여러 언어로 진행된다. 다만 프로그램을 다양하면서도 지루하지 않게 만드는 것은 어려운 문제이다.
가수는 명이고, 공연할 노래는 곡이다. 각 가수는 레퍼토리에 여러 곡을 갖고 있으며, 그중 일부 곡은 서로 다른 언어로 부를 수 있다. 프로그램이 완전하려면 각 참가자가 최소 한 곡을 불러야 하고, 각 곡이 최소 한 번은 불려야 한다. 프로그램이 지루하지 않으려면 각 참가자는 같은 언어를 두 번 이상 쓸 수 없고, 각 곡도 같은 언어로 두 번 이상 부를 수 없다.
각 가수의 레퍼토리가 주어졌을 때, 완전하고 지루하지 않은 프로그램을 만들거나 그것이 불가능하다고 판단하라.
입력
첫 줄에 세 정수 , , 가 주어진다. 각각 가수의 수, 노래의 수, 가능한 공연(레퍼토리 항목)의 수이다 (, ).
다음 개 줄의 각 줄에는 세 정수 , , 가 주어진다 (, , ). 이는 참가자 가 언어 로 노래 를 부를 수 있다는 뜻이다.
출력
완전하고 지루하지 않은 프로그램을 만들 수 없으면 -1을 한 줄에 출력한다.
그렇지 않으면 첫 줄에 공연할 노래의 수 를 출력한다. 둘째 줄에는 프로그램에 포함할 레퍼토리 항목 번호를 1부터 사이의 서로 다른 정수 개로 출력한다. 항목 번호는 입력 순서대로 1부터 매겨지며, 출력 순서는 자유롭다. 답이 여러 개이면 그중 아무거나 출력한다.