解いた問題

3/19/2012

SRM524 Div1 Easy

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

0 件のコメント :

コメントを投稿