Розділіть перший квадрант (включаючи позитивну вісь x, позитивну вісь y та початок) на сітки 1x1, кожну сітку позначте координатами її лівого нижнього кута, як показано нижче:
Зауважте, що кожна сітка містить свої межі та вершини. Використовуючи математичні символи, сітка з міткою (m, n) буде представляти квадрат {(x,y) | m ≤ x ≤ m+1, n ≤ y ≤ n+1}
.
Дано пряму лінію у вигляді ax+by+c=0
цілих чисел a
, b
і c
та сітку, представлену символом (m,n)
, виведіть, чи проходить лінія через сітку, тобто чи є якась точка в даній сітці.
a b c m n output
1 1 0 0 0 true
1 1 0 1 1 false
1 1 0 0 2 false
1 1 -3 0 1 true
1 1 -3 0 0 false
2 -1 0 1 1 true
2 -1 0 1 0 false
2 -1 0 0 2 true
2 -1 0 0 1 true
2 -1 0 1 2 true
2 0 -1 0 0 true
2 0 -1 0 1 true
2 0 -1 0 2 true
2 0 -1 1 0 false
2 0 -1 1 1 false
0 2 -1 0 0 true
0 2 -1 1 0 true
0 2 -1 2 0 true
0 2 -1 0 1 false
0 2 -1 1 1 false
1 0 -1 0 0 true
1 0 -1 0 1 true
1 0 -1 0 2 true
1 0 -1 1 0 true
1 0 -1 1 1 true
Просимо запропонувати більше тестів у коментарях.
Це код-гольф . Найкоротша відповідь у байтах виграє. Застосовуються стандартні лазівки .
[a, b, c]
(лінія) та [m, n]
(квадрат)?