Ziel
In der Alphabetsprache des Stammes Tumba-Umba waren vier Buchstaben „K“, „L“, „M“ und „N“. Wir müssen alle Wörter setzen, die den Bildschirm bilden. n
Die Buchstaben, die aus diesem Alphabet gebaut werden können.Die Herausforderung ist eine normale Herausforderung zu überwinden, die reduziert werden kann.
Wir setzen die Briefe direkt auf das Wort.
Beim ersten Eintrag kann eine der vier Buchstaben des Alphabets eingefügt werden (K. L, M, N).
Zuerst den Brief. K
♪ Dann erhalten Sie alle Optionen mit dem ersten Brief. K
, wir müssen alle möglichen Kombinationen von Buchstaben auf dem Rest überqueren n - 1
(siehe Abbildung).
Die Herausforderung besteht also darin, vier langfristige Ziele zu erreichen.
n - 1
♪
Wiederkehrende Umwandlung von n Symbolen
w[0]='K'; // Schott der letzten L-1 Symbole
w[0]='L '
w[0]='M'; // Schott der letzten L-1 Symbole
w[0]='N '
w
- eine symbolische Linie, in der das Arbeitswort gespeichert ist.
Also haben wir es.
Ich weiß nicht.Die Aufgabe kann durch einen Prozess des Lernens angesprochen werden.
Müssen wir feststellen, wann der Wettbewerb vorbei ist? Wenn alle Symbole angezeigt werden, d.h. die Anzahl der installierten Symbole entspricht
n
♪ Dabei müssen wir das Wort auf dem Bildschirm bekommen und aus dem Verfahren herauskommen.
Das Programm in C# wird wie folgt aussehen.
/ w = Variable (schreit)
/ Das TumbaWords-Verfahren wird in Form einer symbolischen Linie auf das Alphabet übertragen,
/ Wort und Anzahl der bereits installierten Symbole (am Anfang 0)
statische Leerzeichen TumbaWords( String A, ref string w, int N )
{~}
wenn (N == sync, korrigiert von elderman == @elder_man
{~}
/ Sind alle Symbole bereits eingefügt worden,
/ muss die Linie abgrenzen und das Verfahren abschließen
Konsole.WriteLine(w)
zurück;
♪
für (int i = 0; i À w.Length; i ++ ) / wenn die Bedingung falsch ist (d.h. nicht alle Symbole angezeigt werden,
{~}
/ Wenn die Bedingung falsch ist (d.h. nicht alle Symbole angezeigt werden,
/ Wir bewegen alle Alphabetsymbole im Zyklus.
// abwechselnd das Symbol auf den ersten freien Platz setzen
= A[i]
TumbaWords(A, ref w, N+1);
w = w.Remove(w.Length - 1); / und nach Entfernen des letzten hinzugefügten Symbols,
/ um ein neues Wort mit demselben Präfix zu machen
♪
♪
statische Leere Main()
{~}
int n = Convert.ToInt32 (Console.ReadLine());
Stringwort = ";
TumbaWords("KLMN, ref word, 0);
♪
BILDUNGder Parameter w
- Geänderter Parameter (Ausbau)!