Загрузка...

Информатика ЕГЭ информатика 27 задачка хелп

Тема в разделе Учеба создана пользователем b4rss 31 мар 2025. 176 просмотров

  1. b4rss
    b4rss Автор темы 31 мар 2025 67 1 июн 2020
    [IMG]

    В файле А выходит верный ответ, но под Б ответ не сходится, я полагаю, что кластеры разбил неправильно (так как при аналогичном коде для A и Б первая часть считается верно) но вот где - понять не смог. Чтобы не мучаться с файлами, приложу фото двух диаграмм под А и Б соответственно, но если будут нужны, могу скинуть и файлы.

    [IMG]

    [IMG]

    Мой корявый код:
    Код

    clA = [[], [], []]
    clB = [[], [], [], [], [], []]

    for line in open('27_A_18585.txt'):
    x, y, z = [float(k) for k in line.split()]
    if (y+z)/2 > 6:
    clA[0].append([x, (y+z)/2])
    elif x < 4:
    clA[1].append([x, (y+z)/2])
    else:
    clA[2].append([x, (y+z)/2])

    for line in open('27_B_18585.txt'):
    x, y, z = [float(k) for k in line.split()]
    if (y+z)/2 > 8.9:
    clB[0].append([x, (y+z)/2])
    elif (y+z)/2 > 6 and x > 3.8:
    clB[1].append([x, (y+z)/2])
    elif x > 5:
    clB[2].append([x, (y+z)/2])
    elif (y+z)/2 > 5:
    clB[3].append([x, (y+z)/2])
    elif (y+z) < (-1.25*x + 5):
    clB[4].append([x, (y+z)/2])
    else:
    clB[5].append([x, (y+z)/2])

    def dist(A, B):
    x1, y1 = A
    x2, y2 = B
    return ((x2 - x1) ** 2 + (y2 - y1) ** 2) ** 0.5

    def cent(cl):
    m = []
    for p in cl:
    sm = sum(dist(p, p1) for p1 in cl)
    m.append([sm, p])
    return min(m)[1]

    kolvoA = len([x for x in clA if len(x) >= 361])
    kolvoB = len([x for x in clB if len(x) >= 1706])
    centA = [cent(cl) for cl in clA if len(cl) >= 361]
    centB = [cent(cl) for cl in clB if len(cl) >= 1706]
    sxA = sum(x for x, y in centA) / kolvoA * 100000
    syA = sum(y for x, y in centA) / kolvoA * 100000
    sxB = sum(x for x, y in centB) / kolvoB * 100000
    syB = sum(y for x, y in centB) / kolvoB * 100000
    print(int(sxA), int(syA))
    print(int(sxB), int(syB))
     
  2. oooooooooooooo
    oooooooooooooo 31 мар 2025 50 рублей 2397 28 дек 2024
     
    1. b4rss Автор темы
      oooooooooooooo,
    2. oooooooooooooo
Загрузка...
Top