提出 #69113112


ソースコード 拡げる

from sys import stdin
def input():
    return stdin.readline().rstrip("\n")

import random as rd
from math import gcd

def solve():
    n = int(input())
    pos = [tuple(map(lambda s_: int(s_), input().split())) for _ in range(n)]

    def pred(a, b, c):
        th = sum(a * x + b * y + c == 0 for x, y in pos)
        return th > n - th

    def line(i, j):
        ix, iy = pos[i]
        jx, jy = pos[j]
        dx, dy = jx - ix, jy - iy
        g = gcd(dx, dy)
        a, b = dy // g, -dx // g
        return a, b, -(a * ix + b * iy)

    for _ in range(10**2):
        i = j = 0
        while i == j:
            i = rd.randrange(0, n)
            j = rd.randrange(0, n)
        t = line(i, j)
        # print(i, j, t, pred(*t))
        if pred(*t):
            print("Yes")
            print(*t)
            return
    print("No")

case_t = 1
# case_t = int(input())
for _ in [None] * case_t:
    solve()


提出情報

提出日時
問題 E - Colinear
ユーザ wasd314
言語 Python (PyPy 3.10-v7.3.12)
得点 450
コード長 956 Byte
結果 AC
実行時間 755 ms
メモリ 127504 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 450 / 450
結果
AC × 3
AC × 45
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 02_corner_1_00.txt, 02_corner_1_01.txt, 02_corner_1_02.txt, 02_corner_1_03.txt, 02_corner_1_04.txt, 02_corner_1_05.txt, 03_corner_2_00.txt, 03_corner_2_01.txt, 03_corner_2_02.txt, 03_corner_2_03.txt, 04_corner_3_00.txt, 04_corner_3_01.txt, 04_corner_3_02.txt, 04_corner_3_03.txt, 04_corner_3_04.txt, 04_corner_3_05.txt, 04_corner_3_06.txt, 04_corner_3_07.txt, 04_corner_3_08.txt, 04_corner_3_09.txt, 05_corner_4_00.txt, 05_corner_4_01.txt, 06_corner_5_00.txt, 06_corner_5_01.txt, 07_corner_6_00.txt, 07_corner_6_01.txt, 07_corner_6_02.txt, 07_corner_6_03.txt, 07_corner_6_04.txt, 07_corner_6_05.txt, 07_corner_6_06.txt, 07_corner_6_07.txt, 07_corner_6_08.txt, 07_corner_6_09.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 70 ms 77376 KiB
00_sample_01.txt AC 71 ms 77324 KiB
00_sample_02.txt AC 70 ms 77316 KiB
01_random_00.txt AC 215 ms 116256 KiB
01_random_01.txt AC 715 ms 126968 KiB
01_random_02.txt AC 269 ms 126576 KiB
01_random_03.txt AC 734 ms 127036 KiB
01_random_04.txt AC 267 ms 126956 KiB
01_random_05.txt AC 755 ms 127504 KiB
01_random_06.txt AC 594 ms 126660 KiB
01_random_07.txt AC 583 ms 126648 KiB
02_corner_1_00.txt AC 245 ms 126564 KiB
02_corner_1_01.txt AC 243 ms 126832 KiB
02_corner_1_02.txt AC 285 ms 126448 KiB
02_corner_1_03.txt AC 269 ms 126356 KiB
02_corner_1_04.txt AC 253 ms 126740 KiB
02_corner_1_05.txt AC 253 ms 126592 KiB
03_corner_2_00.txt AC 283 ms 127016 KiB
03_corner_2_01.txt AC 262 ms 127388 KiB
03_corner_2_02.txt AC 264 ms 126400 KiB
03_corner_2_03.txt AC 263 ms 126480 KiB
04_corner_3_00.txt AC 70 ms 77232 KiB
04_corner_3_01.txt AC 71 ms 77384 KiB
04_corner_3_02.txt AC 71 ms 77404 KiB
04_corner_3_03.txt AC 71 ms 77168 KiB
04_corner_3_04.txt AC 71 ms 77416 KiB
04_corner_3_05.txt AC 71 ms 77400 KiB
04_corner_3_06.txt AC 70 ms 77416 KiB
04_corner_3_07.txt AC 70 ms 77340 KiB
04_corner_3_08.txt AC 70 ms 77336 KiB
04_corner_3_09.txt AC 70 ms 77060 KiB
05_corner_4_00.txt AC 243 ms 126720 KiB
05_corner_4_01.txt AC 236 ms 126736 KiB
06_corner_5_00.txt AC 79 ms 81960 KiB
06_corner_5_01.txt AC 78 ms 82092 KiB
07_corner_6_00.txt AC 247 ms 126684 KiB
07_corner_6_01.txt AC 257 ms 126688 KiB
07_corner_6_02.txt AC 251 ms 126672 KiB
07_corner_6_03.txt AC 294 ms 127424 KiB
07_corner_6_04.txt AC 253 ms 126668 KiB
07_corner_6_05.txt AC 257 ms 126500 KiB
07_corner_6_06.txt AC 248 ms 126820 KiB
07_corner_6_07.txt AC 266 ms 126776 KiB
07_corner_6_08.txt AC 256 ms 126672 KiB
07_corner_6_09.txt AC 255 ms 126268 KiB