SRM 156 DIV2 Level One - ディスクスペースの確保

おっと、一問やり忘れた。


ハードディスクが複数台あるので、ががっとまとめて、最低何台必要か答える。

#include <vector>
using namespace std;

#define foreach(bind, item) \
    for (typeof ((item).begin()) bind = (item).begin(), __ie = (item).end() ;\
         bind != __ie ; \
         bind++)

class DiskSpace
{
public:
    static int minDrives(vector<int> used, vector<int> total)
    {
        int count;
        int sum = 0;

        foreach (i, used)
            sum += *i;

        for (count = 0; sum > 0; count++)
            sum -= total[count];

        return count;
    }
};

DIV2 Level Oneの問題はホントに簡単な問題が多い。

しかし、しかしだ。簡単な問題なんだと気付くまでにスゲー時間がかかる。しばらく辞書と格闘する。