Carol száma

Carol száma
Próbáld ki a GfG Practice-n #practiceLinkDiv { display: none !important; }

A Carol-szám 4 alakú egész szám n - 2 (n+1) - 1. Egy ekvivalens képlet a (2 n -1) 2 - 2.
Érdekes ingatlan: 
n > 2 esetén az n-edik Carol-szám bináris reprezentációja n-2 egymást követő egyes, középen egyetlen nulla és további n + 1 egymást követő egyes. Példa n = 4 énekszám 223 és 223 binárisa 11011111, itt n-2 = 4-2 = 2 egymást követő kezdetben, majd egyszeres 0 középen, majd n + 1 = 4 + 1 = 5 egymást követő.
Adott egy n szám, a feladat az n-edik Carol szám megtalálása. Az első néhány énekszám -1 7 47 223 959... stb.

Példák:  

Input : n = 2 Output: 7 Input : n = 4 Output: 223 
Recommended Practice Carol Numbers Próbáld ki! C++
   // C++ program to find n'th Carol number   #include          using     namespace     std  ;   // Function to find n'th carol number   int     carol  (  int     n  )   {      int     result     =     pow  (  2       n  )     -     1  ;      return     result     *     result     -     2  ;   }   // Driver program to ru the case   int     main  ()   {      int     n     =     4  ;      cout      < <     carol  (  n  );      return     0  ;   }   
Python3
   # Python program to find n'th Carol number   def   carol  (  n  ):   # a**b is a ^ b in python   result   =   (  2  **  n  )   -   1   return   result   *   result   -   2   # driver program to run the case   n   =   4   print   (  carol  (  n  ))   
Java
   /* Java program to find n'th Carol number */   class   GFG     {      static     int     carol  (  int     n  )      {      double     tmp     =     Math  .  pow  (  2       n  )     -     1  ;      return     (  int  )  tmp  ;      }      public     static     void     main  (  String  []     args  )      {      int     n     =     4  ;      System  .  out  .  println  (  carol  (  n  ));      }   }   
C#
   /* C# program to find n'th Carol number */   using     System  ;   class     GFG     {      static     int     carol  (  int     n  )      {      int     result     =     (  int  )  Math  .  Pow  (  2       n  )     -     1  ;      return     result     *     result     -     2  ;      }      // Driver code      public     static     void     Main  ()      {      int     n     =     4  ;      Console  .  WriteLine  (  carol  (  n  ));      }   }   // This code is contributed by vt_m.   
PHP
      // PHP program to find   // n'th Carol number   // Function to find   // n'th carol number   function   carol  (  $n  )   {   $result   =   pow  (  2     $n  )   -   1  ;   return   $result   *   $result   -   2  ;   }   // Driver Code   $n   =   4  ;   echo   carol  (  $n  );   // This code is contributed by ajit   ?>   
JavaScript
    <  script  >      /* Javascript program to find n'th Carol number */          function     carol  (  n  )      {      let     result     =     Math  .  pow  (  2       n  )     -     1  ;      return     result     *     result     -     2  ;      }          let     n     =     4  ;      document  .  write  (  carol  (  n  ));        <  /script>   

Kimenet:  

223 

Idő összetett y: O(log n) a pow függvényhez

Kiegészítő tér: O(1)