아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

켜지는 픽셀 개수 세기

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

요약
정수 중심과 반지름이 주어질 때 원판이 덮는 단위 정사각형의 개수를 세되, 모서리나 꼭짓점만 스치는 사각형은 제외한다.
난이도

보통10점 중 6점

유형
수학, 기하, 이분 탐색, 구현
정답자
아직 제출이 없습니다

문제

1080p 고해상도 디스플레이에 화면을 가득 채우는 원을 그리면 거의 100만 개에 가까운 픽셀이 켜진다. 정말 많은 픽셀이다! 그렇다면 정확히 몇 개의 픽셀이 켜질까? 지금부터 알아보자.

디스플레이를 모든 픽셀이 한 변의 길이가 11인 정사각형(단위 정사각형)으로 이루어진 직교 좌표 격자라고 하자. 예를 들어 한 픽셀은 마주 보는 두 꼭짓점 (0,0)(0, 0)과 (1,1)(1, 1)을 가지는 정사각형 영역을 차지한다. 원은 격자 좌표로 주어진 중심과 반지름으로 정해지며, 속이 꽉 찬 원(원판)으로 그려진다. 어떤 픽셀의 일부라도 이 원판에 덮이면 그 픽셀은 켜진다. 다만 원이 픽셀의 변이나 한 꼭짓점에만 닿는 경우, 그 픽셀은 켜지지 않는다.

원의 위치와 반지름이 주어질 때, 그 원이 켜는 픽셀의 정확한 개수를 구하여라.

입력

입력은 여러 개의 테스트 케이스로 이루어지며, 각 테스트 케이스는 한 줄에 하나씩 주어진다. 각 테스트 케이스는 세 정수 xx, yy, rr (1≤x,y,r≤1061 \le x, y, r \le 10^6)로 이루어지며, 각각 그려지는 원의 중심 (x,y)(x, y)와 반지름 rr을 나타낸다. 입력의 마지막 줄에는 x=y=r=0x = y = r = 0인 줄이 주어지며, 이 줄은 처리하지 않는다.

출력

각 테스트 케이스마다, 지정된 원을 그렸을 때 켜지는 픽셀의 개수를 한 줄에 하나씩 출력하여라. 모든 원은 디스플레이 영역 안에 완전히 들어온다고 가정해도 좋다.

예제3

  1. 예제 1

    입력
    1 1 1
    5 2 5
    0 0 0
    
    예상 출력
    4
    88
    
  2. 예제 2

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

    입력
    1 1 1
    2 2 2
    3 3 3
    4 4 4
    5 5 5
    6 6 6
    7 7 7
    8 8 8
    9 9 9
    10 10 10
    0 0 0
    
    예상 출력
    4
    16
    36
    60
    88
    132
    172
    224
    284
    344