TopCoder SRM 299 Div1 Easy Projections
問題
nxmの長方形のグリッドがあり、各マスは何もないか、ブロックが置かれているかである。
このグリッドを正面から見たものと、横から見たものが与えられる。
グリッドには最小および最大でいくつのブロックが置かれているか求めよ。
制約条件
n,m≦50
方針
正面から見たときa個ブロックが見えていて、
横から見たときにb個のブロックが見えているとき、
最小のおき方は、max{a,b}個で、最大のおき方はa*b個
ソースコード
class Projections { public: vector <int> count(string front, string right) { int a=0, b=0; rep(i,front.size())a+=front[i]=='x'; rep(i,right.size())b+=right[i]=='x'; vi ans; ans.pb(max(a,b)); ans.pb(a*b); return ans; } };