Heim > Backend-Entwicklung > C++ > Ordnen Sie die ersten N natürlichen Zahlen so an, dass die absolute Differenz zwischen benachbarten Elementen größer als 1 ist

Ordnen Sie die ersten N natürlichen Zahlen so an, dass die absolute Differenz zwischen benachbarten Elementen größer als 1 ist

PHPz
Freigeben: 2023-09-07 22:01:02
nach vorne
1115 Leute haben es durchsucht

Ordnen Sie die ersten N natürlichen Zahlen so an, dass die absolute Differenz zwischen benachbarten Elementen größer als 1 ist

Wir haben die ersten N natürlichen Zahlen. Unsere Aufgabe besteht darin, eine Permutation davon zu erhalten, bei der die absolute Differenz zwischen jeweils zwei aufeinanderfolgenden Elementen > 1 ist. Wenn keine solche Vereinbarung existiert, wird -1 zurückgegeben.

Die Methode ist sehr einfach. Wir werden die Greedy-Methode verwenden. Wir sortieren alle ungeraden Zahlen in aufsteigender oder absteigender Reihenfolge und dann alle geraden Zahlen in absteigender oder aufsteigender Reihenfolge

Begin
   if N is 1, then return 1
   if N is 2 or 3, then return -1 as no such permutation is not present
   even_max and odd_max is set as max even and odd number less or equal to n
   arrange all odd numbers in descending order
   arrange all even numbers in descending order
End
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonOrdnen Sie die ersten N natürlichen Zahlen so an, dass die absolute Differenz zwischen benachbarten Elementen größer als 1 ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage