Mock Exam 3: Energy

Някой може ли да ме насочи къде е проблема с тази задача?

това е кодът, който използвах:

закоментиранта част е варианта който пробвах с double-и вместо int-ове.
първите 9 тест кейса са верни, от 10 до 13 ми връща invalid return

1 Like

Mock Exam 3: Energy

Здравейте! В едно от примерните решения при входна данна числото 3621 е написано:

Odd digits: 3, 1
Even digits: 6, 2
Sum of odd digits = 4
Sum of even digits = 8
8 > 4, so output “8 energy drinks”

Предполагам, че е допусната неволна грешка, защото, поне както аз го разбирам, би трябвало да е:

Odd digits: 3, 2
Even digits: 6, 1
Sum of odd digits = 5
Sum of even digits = 7
7 > 5, so output “7 energy drinks”

Моля Ви да ме поправите, ако бъркам, а ако не бъркам, можете да поправите примерното решение в Description. :slight_smile:

П.С. От вчера не мога да достъпя pastebin.com. Само при мен ли е проблемът? :slight_smile:

Поздрави,
Петър

Проблемът с достъпа до pastebin.com е в моя компютър, защото през телефона влизам. Пуснах решението в джъдж и получих:

Test case #1: Accepted [0.05 s, 9.93 MB]
Your output (clipped)
1 cups of coffee
Test case #2: Wrong Answer [0.05 s, 9.93 MB]
Your output (clipped)
7 energy drinks
Test case #3: Short circuit [N/A, N/A]
Test case #4: Short circuit [N/A, N/A]
Test case #5: Short circuit [N/A, N/A]
Test case #6: Short circuit [N/A, N/A]
Test case #7: Short circuit [N/A, N/A]
Test case #8: Short circuit [N/A, N/A]
Test case #9: Short circuit [N/A, N/A]
Test case #10: Short circuit [N/A, N/A]
Test case #11: Short circuit [N/A, N/A]
Test case #12: Short circuit [N/A, N/A]
Test case #13: Short circuit [N/A, N/A]

Кодът ми е:


sum_odd = 0

sum_even = 0

num_l = [int(dig) for dig in str(num)]

for i in range(0, len(num_l), 2):
 
    sum_odd += num_l[i]
    
for i in range(1, len(num_l), 2):

    sum_even += num_l[i]

if sum_even > sum_odd:

    print(f'{sum_even} energy drinks')

elif sum_even < sum_odd:

    print(f'{sum_odd} cups of coffee')

elif sum_even == sum_odd:

    print(f'{sum_even} of both')```

За първи път получавам такъв изход от джъдж. Аз го тълкъвам като: " Test 2 e грешен и всички други Test [3 - 13] не се изпълняват. Така ли е?

Пробвах кода във VSC с различни по дължина числа и според мен работи вярно, но може и да бъркам.

Моля Ви за помощ за изясняване на случая!

Здравей!

Гледаме цифрите на числото дали са четни или нечетни, а не индекса, на който се намират. Т.е. както е обяснението към примера си е правилно. 3 и 1 са нечетни, а 6 и 2 са четни.

Поздрави,
Коко

Благодаря ти, Коко!