수열과 쿼리의 부분합의 합
시간 제한4초메모리 제한1024 MB
길이 N의 수열에 구간 대입 쿼리 Q개를 적용할 때, 모든 쿼리 구간 [U, D]와 부분 배열 [L, R]의 합을 구하고 998244353으로 나눈 나머지를 출력합니다.
문제
길이가 인 수열 이 있다. 처음에 모든 는 이다. 이때 다음과 같은 쿼리를 사용해 수열 를 변화시킬 수 있다.
: 수열 의 번째부터 번째까지의 값을 로 바꾼다.
개의 쿼리가 주어질 때, 을 '번째부터 번째까지의 쿼리를 순서대로 사용했을 때 의 값'으로 정의한다. 를 여러 번 시행할 경우, 각 시행은 서로 독립적이라 이전 의 시행이 현재 의 시행에 영향을 주지 않는다.
을 으로 나눈 나머지를 계산해 보자. 은 소수이다.
입력
첫 번째 줄에 정수 , 가 공백으로 구분되어 주어진다. ()
두 번째 줄부터 개의 줄에 걸쳐 개의 쿼리가 한 줄에 하나씩 순서대로 주어진다. 번째 쿼리는 공백으로 구분된 세 정수 , , 로 주어진다. (; )
출력
를 으로 나눈 나머지를 출력하시오.