[C언어] 격자점 - 고급

less than 1 minute read

원래 이 문제는 주어진 점이 실수형이었다.

그래서 처음에는 그냥 -3000부터 3000까지 각각의 겹치는 x좌표들을 비교해서 문제를 풀려고 했는데

Discuss를 보니까 문제가 int로 바뀔 조짐이 보인다

그래서 존버 했더니 문제가 int로 바꼈다.

이제 POJ 2954번과 문제가 같아졌다. ㅋㅋ

사실 double로 해도 코드는 비슷하다

DESCRIPTION

주어진 세 꼭짓점 (x1, y1), (x2, y3), (x3, y3)을 연결하여 만들어진 도형 내부에 포함되는 정수 격자점 갯수를 구해보자. (단, 경계에 포함된 것도 포함한다.)

INPUT

Line 1: 입력 갯수 N (0≤N≤10000)

Line 2~N+1: x1, y1, x2, y3, x3, y3

(-10000 ≤ x1, x2, x3 ≤ 10000)

(-3000 ≤ y1, y2, y3 ≤ 3000)

(x1, y1, x2, y3, x3, y3은 모두 정수)

OUTPUT

Line 1~N: 주어진 삼각형 내부의 격자점 갯수

SAMPLE INPUT

4
0 0 1 0 0 1
0 0 5 0 0 5
3 0 -2 0 0 -2
0 0 -3 0 -1 1

SAMPLE OUTPUT

3
21
10
5

Comments