Carol-nummer

Carol-nummer
Probeer het eens op GfG Practice #practiceLinkDiv {weergave: geen! belangrijk; }

Een Carol-nummer is een geheel getal van de vorm 4 N - 2 (n+1) - 1. Een equivalente formule is (2 N -1) 2 - 2.
Een interessante eigenschap: 
Voor n > 2 is de binaire representatie van het n-de Carolgetal n-2 opeenvolgende enen, een enkele nul in het midden en n + 1 meer opeenvolgende enen. Voorbeeld n = 4 kerstliederen zijn 223 en het binaire getal van 223 is 11011111, hier n-2 = 4-2 = 2 opeenvolgende nummers in het begin, vervolgens een enkele 0 in het midden en dan n + 1 = 4 + 1 = 5 opeenvolgende nummers erna.
Gegeven een getal n is het de taak om het n-de Carolgetal te vinden. De eerste paar kerstliednummers zijn -1 7 47 223 959... enz.

Voorbeelden:  

Input : n = 2 Output: 7 Input : n = 4 Output: 223 
Recommended Practice Carol-nummers Probeer het! 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>   

Uitgang:  

223 

Tijd complex y: O(log n) voor pow-functie

Hulpruimte: O(1)