解いた問題

3/19/2012

SRM524 Div1 Easy

250
与えられた範囲で、連続している素数は2と3だけということは想像がつく。
それ以外は、素数でなければ1回で済むし、素数であれば-1して素数でなくす。
class MagicDiamonds {
public:
  long long minimalTransfer(long long n)
  {
    if (n == 1) return 1;
    if (n == 2) return 2;
    if (n == 3) return 3;
   
    for (lli m = 2; m * m <= n; ++m) {
      if (n % m == 0) return 1;
    }
   
    return 2;
  }
};

0 件のコメント :

コメントを投稿