Предизвикателства > Осмодекемврийско пътуване > Решения > Решението на Клементина Картевска

Резултати
1 точки от тестове
1 точки от учител

2 точки общо

5 успешни теста
0 неуспешни теста
Код

 1def organize(cars, students):
 2    def assign_students(seating, index):
 3        if len(seating) == len(students) and all(student.is_comfy() for student in seating):
 4            return True
 5
 6        for student in students[index:]:
 7            if student not in seating:
 8                for car in cars:
 9                    try:
10                        car.add_student(student)
11                        seating.append(student)
12                        if assign_students(seating, index + 1):
13                            return True
14                        car.remove_student(student)
15                        seating.remove(student)                      
16                    except EnvironmentError:
17                        continue
18        return False
19
20    return assign_students([], 0)

.....
----------------------------------------------------------------------
Ran 5 tests in 0.001s

OK

Дискусия
История

f1def organize(cars, students):f1def organize(cars, students):
2    def assign_students(seating, index):2    def assign_students(seating, index):
t3        for student in seating:t
4            print(student, student.car, student.is_comfy() )
5        if len(seating) == len(students) and all(student.is_comfy() for student in seating):3        if len(seating) == len(students) and all(student.is_comfy() for student in seating):
6            return True4            return True
75
8        for student in students[index:]:6        for student in students[index:]:
9            if student not in seating:7            if student not in seating:
10                for car in cars:8                for car in cars:
11                    try:9                    try:
12                        car.add_student(student)10                        car.add_student(student)
13                        seating.append(student)11                        seating.append(student)
14                        if assign_students(seating, index + 1):12                        if assign_students(seating, index + 1):
15                            return True13                            return True
16                        car.remove_student(student)14                        car.remove_student(student)
17                        seating.remove(student)                      15                        seating.remove(student)                      
18                    except EnvironmentError:16                    except EnvironmentError:
19                        continue17                        continue
20        return False18        return False
2119
22    return assign_students([], 0)20    return assign_students([], 0)
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op