Професионална програма
Loading...
+ Нов въпрос
beinsaduno avatar beinsaduno 11 Точки

02.The Lift - Programming fundamentals Mid Exam Retake 12 August 2020

Здравейте,

 

Изпитвам затруднение сьс задача 02.The Lift - Programming fundamentals Mid Exam Retake 12 August 2020. Получавам 88/100 в Judge системата. Бихте ли ми помогнали с правилното решение на задачата?

 

Условие на задачата:

https://judge.softuni.bg/Contests/Practice/Index/2517#1

Решение на задачата:

https://pastebin.com/BA6hjwj0

 

Благодаря предварително!

Тагове:
0
Java Fundamentals
MANEKENA avatar MANEKENA 118 Точки

https://github.com/Petrov-connect/Java-Fundamentals/blob/master/MidExam/TheLift.java

0
beinsaduno avatar beinsaduno 11 Точки

Много благодаря!

1
D.V.Ivanov avatar D.V.Ivanov 6 Точки

След доста мъки и решение със създаване на втори лист и  вярни примерни входове и 66/100 и просветлението, че целта на автора на задачата е да се манипулира входния лист, ето и моето решение в Python!

people = int(input())
all_people = people
wagons = input().split()
max_places = 4
sum_places = sum([int(num) for num in wagons])
empty_places = len(wagons) * max_places - sum_places

for i in range(len(wagons)):
    if int(wagons[i]) < 4 and people >= 4:
        people -= max_places - int(wagons[i])
        wagons[i] = str(max_places)
    elif int(wagons[i]) < 4 and people < 4:
        wagons[i] = str(int(wagons[i]) + people)
        people = 0
        break


if people == 0 and empty_places > all_people:
    print("The lift has empty spots!")
    print(" ".join(wagons))
elif people > 0:
    print(f"There isn't enough space! {people} people in a queue!")
    print(" ".join(wagons))
elif empty_places == all_people and people == 0:
    print(" ".join(wagons))
0