캐릭터와 점화식으로 생성되는 몬스터 열이 주어질 때, 캐릭터가 N마리를 순서대로 모두 이기는지 판정하고 최종 능력치 또는 -1을 출력한다.
보통6시뮬레이션수학구현정수론아직 제출이 없습니다시간 제한1.5초메모리 제한512 MB영우는 오늘도 '갓4'라는 게임을 한다. '갓4'에서 캐릭터와 몬스터에게는 각각 공격력 A, 방어력 D, 최대 체력 H가 정해져 있다. 전투는 항상 1:1로 진행하며 규칙은 다음과 같다.
몬스터를 이기면 캐릭터는 그 몬스터의 능력치를 그대로 흡수한다. 즉 능력치가 (5,5,5)인 캐릭터가 (1,1,1)인 몬스터를 이기면 능력치는 (6,6,6)이 된다. 또 전투에서 이길 때마다 캐릭터의 체력은 최대치까지 회복되므로, 모든 전투는 최대 체력으로 시작한다.
영우는 몬스터 N마리를 한 번도 지지 않고 연속해서 잡으려 한다. 모든 전투에서 이겨야 한다는 뜻이다. 몬스터 N마리의 데이터를 전부 입력으로 주면 크기가 너무 커지므로, k>1인 k번째 몬스터의 능력치는 다음 식으로 정한다.
Ak=((Ak−1×Ap+Aa)mod100)+1
Dk=((Dk−1×Dp+Da)mod3)+1
Hk=((Hk−1×Hp+Ha)mod1000)+1
입력은 표준 입력으로 받는다.
첫째 줄에 몬스터의 수 N이 주어진다. (1≤N≤5×107)
둘째 줄에 영우가 키우는 캐릭터의 공격력 A, 방어력 D, 최대 체력 H가 차례대로 주어진다. (1≤A≤100, 1≤D≤3, 1≤H≤1000)
셋째 줄에 첫 번째 몬스터의 공격력 A1, 방어력 D1, 최대 체력 H1이 차례대로 주어진다. (1≤A1≤100, 1≤D1≤3, 1≤H1≤1000)
넷째 줄에 몬스터의 능력치를 만드는 데 쓰는 값 Ap, Aa, Dp, Da, Hp, Ha가 차례대로 주어진다. (1≤Ap,Dp,Hp≤109, 0≤Aa≤99, 0≤Da≤2, 0≤Ha≤999)
출력은 표준 출력으로 한다.
영우가 몬스터 N마리를 모두 잡았다면 캐릭터의 최종 능력치를 공격력, 방어력, 최대 체력 순으로 공백 하나로 구분해 한 줄에 출력한다. 세 값은 각각 109+7로 나눈 나머지를 출력한다.
도중에 한 번이라도 지면 첫째 줄에 -1만 출력한다.