これが一瞬で浮かぶ数学力を持ち合わせていない。頑張って紙に書いて計算した。
int gcd(int a, int b)
{
return b ? gcd(b, a%b) : a;
}
class Starport {
public:
double getExpectedTime(int N, int M) {
double r = 0;
int d = gcd(max(N, M), min(N, M));
double g = d;
double a = N / d;
double e = (a - 1.0) * a / 2.0;
e /= a;
e *= g;
return r = e;
}
};
0 件のコメント :
コメントを投稿