blobpopcorn
시간 제한2초메모리 제한1024 MB
서로 다른 높이를 가진 blob이 일렬로 있을 때, 두 끝보다 사이의 모든 blob이 작은 쌍의 개수를 높이 갱신과 함께 구한다.
문제
마리의 블롭이 한 줄로 서 있다. 번째 블롭의 키는 이고, 의 값은 서로 다르다.
가끔씩 두 블롭은 팝콘을 먹으며 사이의 다른 블롭들을 구경한다. 번째 블롭 두 마리가 사이의 다른 블롭들을 구경하려면 두 블롭 사이에 있는 모든 블롭이 두 블롭보다 키가 작아야 한다.

블롭들은 자신이 어떤 블롭들을 구경할 수 있는지 궁금해졌지만, 블롭의 키가 자주 바뀌기 때문에 궁금증을 풀 수 없었다.
블롭들을 위해 다음 두 질의를 해결해 주자!
- : 번째 블롭의 키 를 로 바꾼다.
- : 을 만족하는 모든 쌍 중 번째 블롭 두 마리가 사이의 다른 블롭들을 구경할 수 있는 쌍의 개수를 출력한다.
입력
첫째 줄에 수열의 길이 과 질의의 개수 가 공백으로 구분되어 주어진다.
둘째 줄에 수열 이 공백으로 구분되어 주어진다.
셋째 줄부터 개의 줄에 걸쳐 문제에서 설명한 질의가 주어진다. 번 질의는 최소 한 개 이상 존재한다.
출력
번 질의마다 답을 출력한다.
제한
- 모든 입력값은 정수이다.
- 입력으로 주어지는 수열의 원소는 모두 다르고, 각각의 질의를 실행한 후의 수열의 원소들도 모두 서로 다르다.