解いた問題

3/17/2013

SRM567 Div1 Easy

250

積が平方数になるような2つの数を考えればいい。

class TheSquareRootDilemma {
public:
  int countPairs(int N, int M)
  {
    set< pair<int, int> > cnt;
    for (int i = 1; i <= N; ++i) {
      for (int j = 1; i * j * j <= N; ++j) {
        for (int k = 1; i * k * k <= M; ++k) {
          cnt.insert(make_pair(i * j * j, i * k * k));
        }
      }
    }

    return cnt.size();
  }
};