차고
시간 제한4초메모리 제한256 MB
점 갱신이 있는 수열에서 각 구간 질의마다 모든 원소의 최대공약수가 1보다 큰 부분 배열의 개수를 센다.
문제
슬라브코는 요즘 자연수 수열을 공부한다. 수열의 모든 원소의 최대공약수가 1보다 크면, 슬라브코는 그 수열을 흥미로운 수열이라고 부른다.
어제 슬라브코는 차고에서 자연수 개로 이루어진 수열을 찾았다. 너무 심심했던 슬라브코는 간단한 질의를 던지며 시간을 보내기로 했다. 질의는 다음 두 종류 중 하나다.
- 수열의 번째 값을 로 바꾼다.
- 수열의 구간 안에 들어 있는 흥미로운 연속 부분수열이 몇 개인지 구한다.
입력
첫째 줄에 수열의 원소 개수 과 질의 개수 가 주어진다 ().
둘째 줄에 처음 수열을 이루는 자연수 가 개 주어진다 ().
다음 개의 줄에 질의가 한 줄에 하나씩 다음 형식으로 주어진다.
- 줄의 첫 수는 1 또는 2이고, 질의의 종류를 나타낸다.
- 종류가 1이면 두 수 와 가 이어서 주어진다 (, ).
- 종류가 2이면 구간의 왼쪽 끝 과 오른쪽 끝 이 이어서 주어진다 ().
출력
종류가 2인 질의마다 흥미로운 연속 부분수열의 개수를 한 줄에 하나씩 출력한다.
힌트
첫 번째 예제에서 2번째 위치부터 5번째 위치까지의 구간은 (4, 3, 9, 1)이다. 이 구간 안의 흥미로운 연속 부분수열을 대괄호로 표시하면 [4] 3 9 1, 4 [3] 9 1, 4 3 [9] 1, 4 [3 9] 1 네 개다.