Inhaltsverzeichnis
Beispiel Beispiel
Methode 1
Algorithmus
Beispiel
Ausgabe
Fazit
Heim Backend-Entwicklung C++ Prüft, ob alle Zeichen in einer Zeichenfolge durch Erhöhen oder Verringern gleich gemacht werden können

Prüft, ob alle Zeichen in einer Zeichenfolge durch Erhöhen oder Verringern gleich gemacht werden können

Sep 11, 2023 am 11:25 AM
字符串处理 Charaktere sind gleich Operationen erhöhen oder verringern

Prüft, ob alle Zeichen in einer Zeichenfolge durch Erhöhen oder Verringern gleich gemacht werden können

In diesem Problem müssen wir prüfen, ob alle Zeichen der Zeichenfolge durch Vergrößerungs- und Verringerungsoperationen gleich gemacht werden können. Wir können die Gewichtung jedes Zeichens anhand seines ASCII-Werts ermitteln und prüfen, ob die Gesamtgewichtung verwendet werden kann, um alle Zeichen gleich zu machen.

Problemstellung – Wir erhalten eine Zeichenfolge str der Länge N, die Kleinbuchstaben enthält. Wir müssen prüfen, ob wir alle Zeichen in der Zeichenfolge gleich machen können, indem wir eines der beiden Zeichen auswählen, ein Zeichen erhöhen und dann das andere Zeichen um 1 verringern. Gibt nach Möglichkeit „Ja“ aus, andernfalls „Nein“.

Beispiel Beispiel

Eingabe– str = ‘aedb

output-str = 'aedb

Erklärung – „a“ kann um 2 erhöht und „e“ kann um 2 verringert werden. Gleichzeitig kann „b“ um 1 und „d“ um 1 erhöht werden. Daher kann die resultierende Zeichenfolge „cccc“ sein.

Eingabe– str = ‚abd‘

Ausgabe – „Nein“

Erklärung – Wir können nicht alle Zeichen einer Zeichenfolge durch Vergrößerungs- und Verringerungsoperationen gleich machen

Geben Sie -‘g’

ein

Ausgabe – „Ja“

Erklärung – Eine Zeichenfolge enthält nur ein einzelnes Zeichen, sodass alle Zeichenfolgenzeichen bereits gleich sind

Methode 1

Bei dieser Methode berechnen wir das Gesamtzeichengewicht der Zeichenfolge. Die Gewichtungen der Zeichen sind definiert als „a“ = 1, „b“ = 2, „c“ = 3, …, „z“ = 26. Wenn wir also das Gesamtgewicht durch die Länge der Zeichenfolge dividieren, können wir sagen, dass wir durch Erhöhen eines Zeichens und Verringern eines anderen Zeichens alle Zeichen der Zeichenfolge gleich machen.

Algorithmus

  • Definieren Sie die Variable „len“ und verwenden Sie die Methode size(), um die Größe der Zeichenfolge zu speichern.

  • Definieren Sie die Variable „totalWeight“, um das Gesamtgewicht aller Zeichen einer bestimmten Zeichenfolge zu speichern

  • Ermitteln Sie das Gewicht eines bestimmten Zeichens mithilfe des ASCII-Codes jedes Zeichens und fügen Sie ihn zur Variablen „totalWeight“ hinzu.

  • Gibt „true“ zurück, wenn der Wert von „totalWeight“ durch „len“ teilbar ist. Andernfalls wird false zurückgegeben.

Beispiel

#include <iostream>
using namespace std;

// function to check if all characters of a string can be made equal by incrementing or decrementing by 1
bool canMakeEqual(string str){
   int len = str.size();
   // store sum of ASCII values of characters
   int totalWeight = 0;
   // Iterate over the string
   for (int i = 0; i < len; i++){
      // get the ASCII value of each character
      totalWeight += str[i] - 'a' + 1;
   }
   return (totalWeight % len == 0);
}
int main(){
   string str = "aedb";
   if (canMakeEqual(str))
      cout << "Yes";
   else
      cout << "No";
   return 0;
}
Nach dem Login kopieren

Ausgabe

Yes
Nach dem Login kopieren

Zeitkomplexität – O(N), da wir über die Zeichenfolge iterieren.

Raumkomplexität – O(1), weil wir konstanten Raum verwenden.

Fazit

Wir haben gelernt, zu überprüfen, ob alle Zeichen einer Zeichenfolge gleich sein können, indem wir den ASCII-Wert des Zeichens erhöhen und verringern. Wir lösen dieses Problem im Sinne des „Gesamtgewichts“. Der Benutzer kann auch versuchen, die resultierende Zeichenfolge zu finden. Um die resultierende Zeichenfolge zu finden, suchen Sie den ASCII-Wert, der (totalWeight/len) entspricht, und fügen Sie der angegebenen Zeichenfolge „len“-Zeichen hinzu.

Das obige ist der detaillierte Inhalt vonPrüft, ob alle Zeichen in einer Zeichenfolge durch Erhöhen oder Verringern gleich gemacht werden können. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Erklären Sie es in einfachen Worten: Detaillierte Erklärung des String-Escapes und Anti-Escapes in der GO-Sprache Erklären Sie es in einfachen Worten: Detaillierte Erklärung des String-Escapes und Anti-Escapes in der GO-Sprache Apr 07, 2024 am 10:39 AM

In der Go-Sprache verwendet String-Escape einen Backslash (\`) und Sonderzeichen, um Sonderzeichen darzustellen, z. B. das Zeilenumbruchzeichen (\n). Anti-Escape verwendet Backticks (\`), um maskierte Zeichen zu entfernen und ihre ursprünglichen Zeichen wiederherzustellen, z. B. \n, das das tatsächliche Zeilenumbruchzeichen darstellt. Praktische Fälle veranschaulichen die Anwendung von Escape, Anti-Escape und Anti-Escape beim Lesen von Dateien.

Best Practices zum Konvertieren von Zeichenfolgen in Gleitkommazahlen in PHP Best Practices zum Konvertieren von Zeichenfolgen in Gleitkommazahlen in PHP Mar 28, 2024 am 08:18 AM

Das Konvertieren von Zeichenfolgen in Gleitkommazahlen in PHP ist eine häufige Anforderung während des Entwicklungsprozesses. Beispielsweise ist das aus der Datenbank gelesene Betragsfeld vom Typ Zeichenfolge und muss für numerische Berechnungen in Gleitkommazahlen umgewandelt werden. In diesem Artikel stellen wir die Best Practices für die Konvertierung von Strings in Gleitkommazahlen in PHP vor und geben konkrete Codebeispiele. Zunächst müssen wir klarstellen, dass es in PHP hauptsächlich zwei Möglichkeiten gibt, Zeichenfolgen in Gleitkommazahlen umzuwandeln: die Typkonvertierung (float) oder die Funktion (floatval). Im Folgenden stellen wir diese beiden vor

Fehler, die bei der Verarbeitung von PHP-Strings auftreten können, und deren Behebung Fehler, die bei der Verarbeitung von PHP-Strings auftreten können, und deren Behebung May 11, 2023 pm 05:21 PM

PHP ist eine weit verbreitete dynamische Programmiersprache, die ein breites Anwendungsspektrum bietet, insbesondere bei der Entwicklung von Webanwendungen. Die String-Verarbeitung ist eine der am häufigsten verwendeten Funktionen in PHP, aber bei der Verarbeitung von Strings stoßen Entwickler häufig auf verschiedene Fehler und Probleme. In diesem Artikel untersuchen wir einige häufig auftretende Probleme, die bei der PHP-String-Verarbeitung auftreten können, und wie man sie löst. Probleme bei der Zeichenkodierung Bei der Verarbeitung von Zeichenfolgen kommt es häufig zu Problemen bei der Zeichenkodierung. Es gibt viele verschiedene Zeichenkodierungen, die gebräuchlichste davon ist UT

Beherrschen Sie reguläre Ausdrücke und String-Verarbeitung in der Go-Sprache Beherrschen Sie reguläre Ausdrücke und String-Verarbeitung in der Go-Sprache Nov 30, 2023 am 09:54 AM

Als moderne Programmiersprache bietet die Go-Sprache leistungsstarke reguläre Ausdrücke und String-Verarbeitungsfunktionen, sodass Entwickler String-Daten effizienter verarbeiten können. Für Entwickler ist es sehr wichtig, reguläre Ausdrücke und String-Verarbeitung in der Go-Sprache zu beherrschen. In diesem Artikel werden die grundlegenden Konzepte und die Verwendung regulärer Ausdrücke in der Go-Sprache sowie die Verwendung der Go-Sprache zum Verarbeiten von Zeichenfolgen ausführlich vorgestellt. 1. Reguläre Ausdrücke sind ein Werkzeug zur Beschreibung von Zeichenfolgenmustern. Sie können problemlos Vorgänge wie Zeichenfolgenabgleich, Suche und Ersetzung implementieren.

Meistern Sie die Geheimnisse des String-Escapes und Anti-Escapes in der GO-Sprache Meistern Sie die Geheimnisse des String-Escapes und Anti-Escapes in der GO-Sprache Apr 07, 2024 pm 04:33 PM

Beim String-Escape werden Backslashes verwendet, um Sonderzeichen als Escape-Sequenzen darzustellen, während beim Nicht-Escape die Escape-Sequenzen in tatsächliche Zeichen umgewandelt werden. Die Go-Sprache unterstützt die folgenden Escape-Sequenzen: \n (Zeilenvorschub), \t (Tab), \r (Wagenrücklauf), \f (Formularvorschub), \a (Alarm), \b (Rücktaste), \ v (vertikaler Tabulator), zusätzlich zum Backslash selbst, einfache und doppelte Anführungszeichen. Rohe Zeichenfolgenliterale werden in Backticks eingeschlossen und es werden keine Zeichen maskiert. Escape-Zeichen sind in HTML-Code und JSON-Daten nützlich, um Sonderzeichen anzuzeigen oder zu maskieren.

Verarbeitung von PHP-Strings: Ausführliche Erklärung zum Entfernen aller Leerzeichen Verarbeitung von PHP-Strings: Ausführliche Erklärung zum Entfernen aller Leerzeichen Mar 23, 2024 pm 06:51 PM

PHP ist eine leistungsstarke Programmiersprache, die in der Webentwicklung weit verbreitet ist. Im Prozess der Webentwicklung stoßen wir häufig auf Situationen, in denen Zeichenfolgen verarbeitet werden müssen und das Entfernen von Leerzeichen aus Zeichenfolgen eine häufige Anforderung ist. In diesem Artikel wird detailliert beschrieben, wie in PHP alle Leerzeichen aus einer Zeichenfolge entfernt werden, und es werden spezifische Codebeispiele bereitgestellt. 1. Verwenden Sie die Funktion str_replace. Sie ist eine häufig verwendete Funktion zum Ersetzen von Zeichenfolgen. Sie kann ein bestimmtes Zeichen durch ein anderes ersetzen. Mit dieser Funktion können Sie

So entfernen Sie bestimmte Zeichen aus einer Zeichenfolge in PHP mithilfe regulärer Ausdrücke So entfernen Sie bestimmte Zeichen aus einer Zeichenfolge in PHP mithilfe regulärer Ausdrücke Jun 22, 2023 pm 03:46 PM

In PHP können Sie mithilfe regulärer Ausdrücke ganz einfach bestimmte Zeichen aus einer Zeichenfolge entfernen. Reguläre Ausdrücke sind ein leistungsstarkes Werkzeug, das uns hilft, Text anhand bestimmter Muster abzugleichen und zu bearbeiten. In diesem Artikel stellen wir vor, wie man reguläre Ausdrücke verwendet, um bestimmte Zeichen aus einer Zeichenfolge zu entfernen, und wie man die preg_replace-Funktion in PHP verwendet, um dieses Ziel zu erreichen. Die Verwendung regulärer Ausdrücke zum Ersetzen bestimmter Zeichen „.“ in regulären Ausdrücken identifiziert jedes einzelne Zeichen, das wir verwenden können

Was sind die 7 PHP-String-Verarbeitungsfunktionen? Was sind die 7 PHP-String-Verarbeitungsfunktionen? Sep 18, 2023 pm 02:14 PM

Zu den sieben PHP-String-Verarbeitungsfunktionen gehören strlen(), strpos(), substr(), str_replace(), strtolower(), strtoupper(), trim() usw. Detaillierte Einführung: 1. strlen(), wird verwendet, um die Länge einer Zeichenfolge zu ermitteln; 2. strpos(), wird verwendet, um eine bestimmte Teilzeichenfolge in einer Zeichenfolge zu finden und die erste Vorkommensposition zurückzugeben. 3. substr(), wird verwendet, um die Teilzeichenfolge zu ermitteln von string; 4. str_replace() usw.

See all articles