Dada una string str que contiene solo letras mayúsculas y minúsculas. La tarea es verificar si tanto los caracteres en minúsculas como los caracteres en mayúsculas siguen el mismo orden respectivamente.
Nota: si un carácter aparece más de una vez en minúsculas, la aparición del mismo carácter en mayúsculas debe ser la misma.
Ejemplos:
Input: str = "geeGkEEsKS" Output: Yes Lowercase = geeks, Uppercase = GEEKS Input: str = "GeEkKg" Output: No Lowercase = ekg, Uppercase = GEK
Acercarse:
- Atraviesa la cuerda.
- Almacene los alfabetos en minúsculas y mayúsculas en dos strings separadas lowerStr y upperStr respectivamente.
- Convierte una string de minúsculas a mayúsculas.
- Compruebe si ambas strings en mayúsculas son iguales o no.
- Escriba Sí si es igual, de lo contrario escriba No.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to check if lowercase and // uppercase characters are in same order #include <bits/stdc++.h> using namespace std; // Function to check if both the // case follow the same order bool isCheck(string str) { int len = str.length(); string lowerStr = "", upperStr = ""; // Traverse the string for (int i = 0; i < len; i++) { // Store both lowercase and uppercase // in two different strings if (str[i] >= 65 && str[i] <= 91) upperStr = upperStr + str[i]; else lowerStr = lowerStr + str[i]; } // using transform() function and ::toupper in STL transform(lowerStr.begin(), lowerStr.end(), lowerStr.begin(), ::toupper); return lowerStr == upperStr; } // Driver code int main() { string str = "geeGkEEsKS"; isCheck(str) ? cout << "Yes" : cout << "No"; return 0; }
Java
//Java program to check if lowercase and // uppercase characters are in same order public class GFG { //Function to check if both the //case follow the same order static boolean isCheck(String str) { int len = str.length(); String lowerStr = "", upperStr = ""; char[] str1 = str.toCharArray(); // Traverse the string for (int i = 0; i < len; i++) { // Store both lowercase and uppercase // in two different strings if ((int)(str1[i]) >= 65 && (int)str1[i] <= 91) upperStr = upperStr + str1[i]; else lowerStr = lowerStr + str1[i]; } // transform lowerStr1 to upper String transformStr = lowerStr.toUpperCase(); return(transformStr.equals(upperStr)); } //Driver code public static void main(String[] args) { String str = "geeGkEEsKS"; if (isCheck(str)) System.out.println("Yes"); else System.out.println("No"); } }
Python 3
# Python 3 program to Check if lowercase and # uppercase characters are in same order # Function to check if both the # case follow the same order def isCheck(str) : length = len(str) lowerStr, upperStr = "", "" # Traverse the string for i in range(length) : # Store both lowercase and # uppercase in two different # strings if (ord(str[i]) >= 65 and ord(str[i]) <= 91) : upperStr = upperStr + str[i] else : lowerStr = lowerStr + str[i] # transform lowerStr to uppercase transformStr = lowerStr.upper() return transformStr == upperStr # Driver Code if __name__ == "__main__" : str = "geeGkEEsKS" if isCheck(str) : print("Yes") else : print("No") # This code is contributed # by ANKITRAI1
C#
// C# program to check if lowercase and // uppercase characters are in same order using System; class GFG { //Function to check if both the //case follow the same order static bool isCheck(string str) { int len = str.Length; string lowerStr = "", upperStr = ""; char[] str1 = str.ToCharArray(); // Traverse the string for (int i = 0; i < len; i++) { // Store both lowercase and uppercase // in two different strings if ((int)(str1[i]) >= 65 && (int)str1[i] <= 91) upperStr = upperStr + str1[i]; else lowerStr = lowerStr + str1[i]; } // transform lowerStr1 to upper String transformStr = lowerStr.ToUpper(); return(transformStr.Equals(upperStr)); } //Driver code public static void Main(String[] args) { String str = "geeGkEEsKS"; if (isCheck(str)) Console.WriteLine("Yes"); else Console.WriteLine("No"); } }
Javascript
<script> // Javascript program to check if lowercase and // uppercase characters are in same order // Function to check if both the // case follow the same order function isCheck(str) { var len = str.length; var lowerStr = "", upperStr = ""; // Traverse the string for (var i = 0; i < len; i++) { // Store both lowercase and uppercase // in two different strings if (str[i] >= 'A' && str[i] < 'a') upperStr = upperStr + str[i]; else lowerStr = lowerStr + str[i]; } lowerStr = lowerStr.toUpperCase(); console.log(lowerStr); return lowerStr === upperStr; } // Driver code var str = "geeGkEEsKS"; isCheck(str) ? document.write( "Yes") : document.write( "No"); </script>
Producción:
Yes
Complejidad de tiempo: O (len)
Espacio auxiliar: O(len), donde len es la longitud de la string.
Publicación traducida automáticamente
Artículo escrito por Shivam.Pradhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA