Loading...
korea60 avatar korea60 2 Точки

Тиме Лимит с: 07. Perfetct Number

Здравейте имам някакъв проблем с решението на тази задача: https://judge.softuni.bg/Contests/Compete/Index/1728#6

това е моето решение: https://pastebin.com/2eRRCmm5

Връща ми резултат: 83/100, бихте ли помогнали с проблема, моля.

Тагове:
0
Python Fundamentals
Xpuck0 avatar Xpuck0 69 Точки

Решението ти би трябвало да работи, сигурно джъджа е натоварен и трябва да събмитваш повече пъти или пробвай в друг часови диапазон.

Имаш доста повторения в кода и долната черта се използва, когато няма да ти трябва индекса.

Моето решението в момента също гърми за време. Явно последния тест е с доста голямо число.

0
22/07/2020 20:29:56
korea60 avatar korea60 2 Точки

Изпратих го около 10-а пъти, включително и днес. Последният резултат гърми за време.

0
DesislavaCvetkova avatar DesislavaCvetkova 0 Точки

Имам същия проблем. Пробвах какви ли не варианти, но винаги гърми на последния тест.

0
ankamar56 avatar ankamar56 8 Точки

for _ in range(1, number//2 + 1):

според мен - цикълът трябва да започва от 2 - като първото просто число - делител.

divisors = [1]
a = int(input())
c = a // 2+1
for i in range(2, c):
    if a % i == 0:
        divisors.append(i)
if sum(divisors) == a:
    print("We have a perfect number!")
else:
    print("It\'s not so perfect.")
0
06/09/2021 23:59:30
Unconsciousness avatar Unconsciousness 0 Точки

Ето нещо от мен :)

def perfect_number(num):
    prop_div = []
    for n in range(1, + num):
        if num % n == 0:
            prop_div.append(n)
    if sum(prop_div) == num:
        print("We have a perfect number!")
    else:
        print("It's not so perfect.")
    return num


number = int(input())
perfect_number(number)

 

 
0
02/09/2021 18:28:50
IvanNankov95 avatar IvanNankov95 8 Точки
number = int(input())

def perfect_number(def_num: int):
    divisors = []
    for num in range(1, def_num + 1):
        if def_num % num == 0:
            divisors.append(num)
    if (sum(divisors) / 2) == def_num:
        return True
    return False

if perfect_number(number):
    print("We have a perfect number!")
else:
    print("It's not so perfect.")

 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.