로봇
시간 제한10초메모리 제한512 MB
모든 로봇이 이동 선택에 상관없이 k번 명령을 받은 뒤 기지에 있도록 하는 k를 구하고, 없으면 -1을 출력하는 문제입니다.
문제
칼리탄 바이타자르는 광물 자원이 풍부한 소행성 BA-1T의 식민지 개척을 감독한다. 그의 임무는 아르다늄을 캐는 로봇 광부들을 관리하는 것이다. 우주 날씨 예보에 따르면 곧 유성우가 쏟아지므로, 그 전에 모든 로봇이 장갑을 두른 기지 안에 숨어 있는 편이 낫다.
안타깝게도 채굴 제어 시스템은 제 역할을 다하지 못한다. 할 수 있는 일은 음이 아닌 정수 하나를 입력하는 것뿐이며, 그러면 모든 로봇에 "움직여!" 명령이 번 전송된다.
행성 표면에는 개의 구역이 있다. 일부는 기지이고 나머지는 노천 아르다늄 광산이다. 로봇은 양자 두뇌를 갖고 있어 비결정적으로 움직인다. 각 구역 마다 바이타자르가 아는 공집합이 아닌 집합 가 있어, 구역 에 있는 로봇은 명령을 받으면 의 구역 중 하나로 이동한다. 어느 구역으로 갈지는 알 수 없다. 반복되는 패턴도 보장되지 않는다. 로봇이 구역 에 여러 번 와 있었더라도, 이번에는 이전과 다른 구역으로 갈 수 있다.
바이타자르는 명령을 번 실행한 뒤 모든 로봇이 반드시 어느 한 기지에 있게 되는 가 존재하는지 알고 싶어 한다.
입력
첫 줄에는 세 정수 , , (, )이 주어진다. 각각 구역의 수, 기지의 수, 로봇의 수다. 구역은 1번부터 번까지 번호가 붙고, 1번부터 번까지가 기지다.
이어서 개의 줄이 주어진다. 각 줄은 0과 1로만 이루어진 길이 의 문자열이다. 번째 줄의 번째 문자가 1이면, 명령 후 구역 의 광부가 구역 로 이동할 수 있다는 뜻이다. 각 줄에는 1이 적어도 하나 있다.
마지막 줄에는 로봇이 처음 있는 구역 번호 개가 증가하는 순서로 주어진다.
출력
조건을 만족하는 가 존재하지 않으면 -1을 출력한다. 그렇지 않으면 조건을 만족하는 음이 아닌 정수가 십진수로 200자리 이하로 존재함이 보장된다. 그중 아무 수나 출력하면 된다.