SRM 150 DIV 2 (250)

Programming/SRM Practice 2009. 9. 15. 23:11
SRM 150 DIV 2 (250)
문제 요약 : 지갑을 고치는 데 몇 일을 소비할까?

using System;

 

public class WidgetRepairs

{

    public int days(int[] arrivals, int numPerDay)

    {

        int days = 0;

        int remains = 0;

 

        for (int i = 0; i < arrivals.Length - 1; i++)

        {

            arrivals[i] += remains;

            remains = 0;

 

            if (arrivals[i] == 0) continue;

 

            if (arrivals[i] - numPerDay > 0)

            {

                int temp = arrivals[i] - numPerDay;

 

                if (temp > numPerDay)  remains = temp;

                else arrivals[i + 1] += temp;

            }

            days++;

        }

        days += (arrivals[arrivals.Length - 1] + remains) / numPerDay;

        if ((arrivals[arrivals.Length - 1] + remains) % numPerDay != 0) days++;

        return days;

    }

}


'Programming > SRM Practice' 카테고리의 다른 글

SRM 149 DIV 2 (250)  (0) 2009.09.15
SRM 307 DIV 2 (250)  (0) 2009.07.04
SRM 191 DIV 2 (250)  (0) 2009.05.30
SRM 148 DIV 2 (250)  (0) 2009.05.27
SRM 146 DIV 2 (250)  (0) 2009.05.27
: