2013 TCO Round 1A Easy(250) HouseBuilding

HouseBuilding

揃える高さを色々試してみれば良い。

#include <string>
#include <vector>
using namespace std;

class HouseBuilding{public:
int getMinimum( vector <string> area )
{
    int h = (int)area.size();
    int w = (int)area[0].size();

    int ans = w*h*10;
    for ( int i=0; i<10; i++ )
    {
        int c = 0;
        for ( int y=0; y<h; y++ )
        for ( int x=0; x<w; x++ )
        {
            int t = area[y][x]-'0';
            c += min( abs(t-i), abs(t+1-i) );
        }
        ans = min( ans, c );
    }
    return ans;
}};