1. Список говнокодов пользователя Admiral_Prostatov

    Всего: 1

  2. Python / Говнокод #28910

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    '''
    1. Прибавить 1
    2. Прибавить 3
    3. Прибавить 7
    
    Программа для исполнителя – это последовательность команд. Сколько существует программ, для которых при исходном числе 13 результатом является число 31?
    Все пары чисел траектории вычислений должны быть взаимно простыми (под парой подразумевается два подряд идущих числа).
    Например, из числа 24 командой 2 (+3) нельзя перейти в число 27, потому как оба эти числа делятся на 3.
    А из числа 25 можно перейти в 28., т.к. для этих чисел нет общих простых делителей, т.е. числа взаимно простые.
    '''
    
    
    def f(x, y):
        if x == 13:
            return f(x + 1, y) + f(x + 3, y) + f(x + 7, y)
        a = set()
        b = set()
        c = set()
        d = set()
        ### ВОТ ЭТА ЗАЛУПА ЗАМЕНЯЕТСЯ 1 СТРОЧКОЙ
        if x >= y:
            return x == y
        for i in range(1, x+1):
            if x % i == 0:
                a.add(i)
        for p in range(1, x+1 + 1):
            if (x+1) % p == 0:
                b.add(p)
        for o in range(1, x+1 + 3):
            if (x+3) % o == 0:
                c.add(o)
        for r in range(1, x+1 + 7):
            if (x+7) % r == 0:
                d.add(r)
    
        if len(a & b) == 1 and (list(a & b))[0] == 1:
            if len(a & c) == 1 and (list(a & c))[0] == 1:
                if len(a & d) == 1 and (list(a & d))[0] == 1:
                    return f(x + 1, y) + f(x + 3, y) + f(x + 7, y)
    
        if len(a & b) == 1 and (list(a & b))[0] == 1:
            if not(len(a & c) == 1 and (list(a & c))[0] == 1):
                if len(a & d) == 1 and (list(a & d))[0] == 1:
                    return f(x + 1, y) + f(x + 7, y)
    
        if len(a & b) == 1 and (list(a & b))[0] == 1:
            if len(a & c) == 1 and (list(a & c))[0] == 1:
                if not(len(a & d) == 1 and (list(a & d))[0] == 1):
                    return f(x + 1, y) + f(x + 3, y)
    
        if not(len(a & b) == 1 and (list(a & b))[0] == 1):
            if len(a & c) == 1 and (list(a & c))[0] == 1:
                if len(a & d) == 1 and (list(a & d))[0] == 1:
                    return f(x + 3, y) + f(x + 7, y)
    
        if not(len(a & b) == 1 and (list(a & b))[0] == 1):
            if not(len(a & c) == 1 and (list(a & c))[0] == 1):
                if len(a & d) == 1 and (list(a & d))[0] == 1:
                    return f(x + 7, y)
    
        if not(len(a & b) == 1 and (list(a & b))[0] == 1):
            if len(a & c) == 1 and (list(a & c))[0] == 1:
                if not(len(a & d) == 1 and (list(a & d))[0] == 1):
                    return f(x + 3, y)
    
        if len(a & b) == 1 and (list(a & b))[0] == 1:
            if not(len(a & c) == 1 and (list(a & c))[0] == 1):
                if not(len(a & d) == 1 and (list(a & d))[0] == 1):
                    return f(x + 1, y)
    
        if not(len(a & b) == 1 and (list(a & b))[0] == 1):
            if not(len(a & c) == 1 and (list(a & c))[0] == 1):
                if not(len(a & d) == 1 and (list(a & d))[0] == 1):
                    return x
        return 0
    print(f(13, 31))

    Я сын тайской шлюхи

    Admiral_Prostatov, 01 Февраля 2024

    Комментарии (0)