youngkwangjoo / smallProject

그냥 심심해서해보는 심심한 프로젝트
1 stars 0 forks source link

while문, 로직 변경 #6

Closed youngkwangjoo closed 1 month ago

youngkwangjoo commented 1 month ago

기존 while 문으로 밸런스.py를 통해 스케줄을 조정하던 부분을 전부 폐기함 밸런스.py를 쓰면 스케줄 표가 망가짐

로직을 변경해서 간호사간의 횟수 차이나는 부분과 day, evening, night 에 몰리는 횟수를 분배하는 로직으로 바꿈

구체적으로 1일차는 랜덤으로 간호사를 배치한 후 2일차부터는 각 근무가 가장 적은인원 중 규칙에 맞는 인원을 스케줄 표에 넣는 방식으로 바꿈

결과적으로 간호사간의 근무타임이 기존 8회에서 3회로 줄어들고 근무타임이 공정하게 배분되서 로직이 짜짐.

youngkwangjoo commented 1 month ago

Nurse object (1): 총 근무 횟수 = 21 (Day: 21, Evening: 0, Night: 0) Nurse object (2): 총 근무 횟수 = 21 (Day: 21, Evening: 0, Night: 0) Nurse object (3): 총 근무 횟수 = 15 (Day: 0, Evening: 15, Night: 0) Nurse object (4): 총 근무 횟수 = 14 (Day: 0, Evening: 14, Night: 0) Nurse object (5): 총 근무 횟수 = 14 (Day: 0, Evening: 0, Night: 14) Nurse object (6): 총 근무 횟수 = 14 (Day: 0, Evening: 0, Night: 14) Nurse object (7): 총 근무 횟수 = 21 (Day: 18, Evening: 0, Night: 3) Nurse object (8): 총 근무 횟수 = 14 (Day: 1, Evening: 13, Night: 0) Nurse object (9): 총 근무 횟수 = 21 (Day: 18, Evening: 0, Night: 3) Nurse object (10): 총 근무 횟수 = 14 (Day: 0, Evening: 14, Night: 0) Nurse object (11): 총 근무 횟수 = 14 (Day: 0, Evening: 14, Night: 0) Nurse object (12): 총 근무 횟수 = 14 (Day: 0, Evening: 14, Night: 0) Nurse object (13): 총 근무 횟수 = 13 (Day: 0, Evening: 0, Night: 13) Nurse object (14): 총 근무 횟수 = 13 (Day: 0, Evening: 0, Night: 13)

youngkwangjoo commented 1 month ago

Nurse object (1): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (2): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (3): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (4): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (5): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (6): 총 근무 횟수 = 19 (Day: 7, Evening: 7, Night: 5) Nurse object (7): 총 근무 횟수 = 18 (Day: 7, Evening: 7, Night: 4) Nurse object (8): 총 근무 횟수 = 18 (Day: 7, Evening: 7, Night: 4) Nurse object (9): 총 근무 횟수 = 17 (Day: 7, Evening: 6, Night: 4) Nurse object (10): 총 근무 횟수 = 17 (Day: 6, Evening: 7, Night: 4) Nurse object (11): 총 근무 횟수 = 16 (Day: 6, Evening: 6, Night: 4) Nurse object (12): 총 근무 횟수 = 16 (Day: 6, Evening: 6, Night: 4) Nurse object (13): 총 근무 횟수 = 16 (Day: 6, Evening: 6, Night: 4) Nurse object (14): 총 근무 횟수 = 16 (Day: 6, Evening: 6, Night: 4)