만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

풍선 놀이

면접 대비

시간 제한1초메모리 제한128 MB

요약
N개의 슬롯과 Q개의 등차수열이 주어질 때, 각 pass가 채우는 슬롯을 표시하고 마지막에 비어 있는 슬롯의 개수를 센다.
난이도

쉬움10점 중 3점

유형
시뮬레이션, 구현, 배열, 수학
정답자
아직 제출이 없습니다

문제

매년 가을 대전에서 열리는 대학생 프로그래밍 대회의 묘미 중 하나는 풍선 놀이이다. 시상식에서 스코어보드가 공개되기를 기다리다 심심해지면, 주위의 풍선을 엮어 대회장을 가로지르는 긴 풍선 줄을 만든다. 이 풍선 줄을 아치 모양으로 단상 위에 올리면 참가자들에게 자신의 잉여로움을 뽐낼 수 있다.

심심해진 재현이와 한필이는 풍선 놀이를 하려고 긴 풍선 줄을 가져왔다. 풍선 줄에는 풍선을 매달 수 있는 슬롯이 NN개 있고, 각 슬롯에는 11번부터 NN번까지 번호가 붙어 있다. 한필이는 이 풍선 줄에 QQ번에 걸쳐 규칙적으로 풍선을 꽂았다.

한 번의 설치는 두 정수 LL과 II로 정해진다. "LL번 슬롯에서 시작하여 번호가 II씩 커지도록 풍선을 놓자"라는 뜻으로, L,L+I,L+2I,…L, L+I, L+2I, \dots번 슬롯에 차례로 풍선을 놓는다. 슬롯 번호가 NN을 넘어가면 그 설치를 멈춘다. 이미 풍선이 놓인 슬롯을 만나면 새로 놓지 않고 건너뛴다(그 슬롯은 계속 채워진 상태로 남는다).

QQ번의 설치가 모두 끝난 뒤, 아직 풍선이 놓이지 않은 빈 슬롯이 몇 개인지 세어 보자.

입력

첫 번째 줄에 슬롯의 개수 NN과 풍선을 꽂는 횟수 QQ가 주어진다. (1≤N≤10 0001 \le N \le 10\,000, 1≤Q≤1001 \le Q \le 100)

이어지는 QQ개의 줄에 각 설치 방법이 한 줄에 하나씩 주어진다. 각 줄에는 두 정수 LL과 II가 주어지며, "LL번 슬롯에서 시작하여 번호가 II씩 커지도록 풍선을 놓는다"는 뜻이다. (1≤L,I≤N1 \le L, I \le N)

출력

모든 설치가 끝난 뒤 비어 있는 슬롯의 개수를 출력한다.

힌트

아래는 N=30N = 30이고 설치를 세 번 하는 경우이다(이 예시는 아래 첫 번째 테스트 케이스와 같다).

처음에는 모든 슬롯이 비어 있다.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

L=1L=1, I=3I=3으로 풍선(R)을 놓으면 1,4,7,…1, 4, 7, \dots번 슬롯이 채워진다.

R . . R . . R . . R . . R . . R . . R . . R . . R . . R . .

L=3L=3, I=7I=7로 풍선(B)을 놓는다. 이미 채워진 슬롯(예: 10번)은 건너뛴다.

R . B R . . R . . R . . R . . R B . R . . R . B R . . R . .

L=1L=1, I=4I=4로 풍선(D)을 놓는다.

R . B R D . R . D R . . R . . R B . R . D R . B R . . R D .

최종적으로 빈 슬롯은 1313개이다.

예제3

  1. 예제 1

    입력
    30 3
    1 3
    3 7
    1 4
    
    예상 출력
    13
    
  2. 예제 2

    입력
    1 1
    1 1
    
    예상 출력
    0
    
  3. 예제 3

    입력
    10 1
    1 1
    
    예상 출력
    0