#practiceLinkDiv { näyttö: ei mitään !tärkeää; }Carol-luku on muotoa 4 oleva kokonaislukun- 2(n+1)- 1. Vastaava kaava on (2n-1)2- 2.
Mielenkiintoinen omaisuus:
Kun n > 2, n:nnen Carol-luvun binääriesitys on n-2 peräkkäistä ykköstä yksittäinen nolla keskellä ja n + 1 peräkkäinen ykkönen. Esimerkki n = 4 laululuku on 223 ja 223:n binääriluku on 11011111, tässä n-2 = 4-2 = 2 peräkkäistä alussa, sitten yksi 0 keskellä ja sitten n + 1 = 4 + 1 = 5 peräkkäistä sen jälkeen.
Kun on annettu luku n, tehtävänä on löytää n:s Carol-luku. Ensimmäiset laulunumerot ovat -1 7 47 223 959... jne.
Esimerkkejä:
arp-komento
Input : n = 2 Output: 7 Input : n = 4 Output: 223Recommended Practice Carol numerot Kokeile sitä! 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>
Lähtö:
223
Aika monimutkainen y: O(log n) pow-funktiolle
tavutaulukko merkkijonoksi
Aputila: O(1)