Logo
(追記) (追記ここまで)

28269번 - Kneaded-Loosened 서브태스크스페셜 저지

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB121333040.000%

문제

운동선수 제이의 휴식을 돕기 위해 토끼 니키는 수많은 고양이 동영상을 보면서 꾹꾹이를 연습하였다. 니키는 꾹꾹이를 연습하면서 자신의 왼발 힘이 $L$이고 오른발 힘이 $R$인 것을 깨달았다.

니키는 이번에 제이의 어깨를 안마하려고 한다. 니키가 안마해야 할 제이의 어깨 부위의 수는 총 $N$군데이며 왼쪽으로부터 $i+1$번째(0ドル \leq i < N$) 어깨 부위에는 총 $S_i$만큼 힘을 주어야 한다.

니키는 제이의 $P_l + 1$번째 어깨 부위에 왼발을 올리고 $P_r + 1$번째 어깨 부위에 오른발을 올려서 꾹꾹이를 할 수 있다. 니키가 양발의 위치를 계속 바꿔가면서 꾹꾹이를 했을 때 제이의 $i+1$번째 어깨 부위를 왼발로 $A_i$번, 오른발로 $B_i$번 누른 경우 $A_i \cdot L + B_i \cdot R = S_i$를 만족해야 한다.

꾹꾹이를 정확하게 해야 한다는 것을 확인하고 당황한 니키는 여러분에게 꾹꾹이를 어떻게 해야 하는지 물어보았다. 니키를 도와 꾹꾹이를 하는 방법을 구하는 프로그램을 작성하여라.

입력

첫 번째 줄에 니키가 눌러야 할 제이의 어깨 부위의 수 $N,ドル 니키의 왼발 힘 $L,ドル 니키의 오른발 힘 $R$이 주어진다.

두 번째 줄에는 제이의 $i+1$번째 어깨 부위를 풀어주기 위해 필요한 강도 $S_i$에 해당하는 $N$개의 정수가 주어진다.

출력

만약 니키가 적절하게 꾹꾹이를 할 수 없으면 -1을 출력한다.

만약 니키가 적절하게 꾹꾹이를 할 수 있다면, 첫 번째 줄에 니키의 꾹꾹이 전략에서 단계의 수 $K$ (0ドル \leq K \leq 10 \cdot N$)를 출력한다.

두 번째 줄부터 $K$개의 줄에는 니키의 각 단계 꾹꾹이 전략을 Pl Pr C (0ドル \leq P_l < P_r < N; 1 \leq C \leq 10^9$) 형식으로 출력한다. 이는 니키가 제이의 $P_l + 1$번째 부위에 왼발을, $P_r + 1$번째 부위에 오른발을 올려 꾹꾹이를 $C$번 반복한다는 의미이다.

가능한 정답이 여러 가지라면 그중 아무거나 출력한다. $K$를 최소화할 필요는 없다.

제한

서브태스크

모든 데이터에 대해서, 2ドル ≤ N ≤ 100,000円$; 1ドル ≤ L,R ≤ 10^9$; 0ドル ≤ S_i ≤ 10^9$를 만족한다.

번호배점제한
11

$L = R = 1$

21

$N,L,R,S_i ≤ 1,000円$

31

추가 제약조건은 없다.

예제 입력 1

3 3 4
6 7 8

예제 출력 1

3
0 1 1
0 2 1
1 2 1

예제 입력 2

4 3 4
6 7 8 9

예제 출력 2

-1

힌트

출처

Contest > BOJ User Contest > FunctionCup > FunctionCup 2023 KL번

채점 및 기타 정보

  • 예제는 채점하지 않는다.
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /