Given a sequence of characters, print consecutive sequence of characters in a line, otherwise
print it in a new line.
Examples:
Input : ABCXYZACCD Output : ABC XYZ A C CD Input : ABCZYXACCD Output: ABC ZYX A C CD
The idea is to traverse string from left to right. For every traversed character, print it in a line if it is consecutive to previous one, else print a new line character.
Implementation:
C++
// C++ program to print consecutive characters // together in a line. #include <iostream> using namespace std;
void print(string str)
{ cout << str[0];
for ( int i = 1; str[i] != '\0' ; i++) {
if ((str[i] == str[i - 1] + 1)
|| (str[i] == str[i - 1] - 1))
cout << str[i];
else
cout << "\n" << str[i];
;
}
} // Driver code int main()
{ string str = "ABCXYZACCD" ;
print(str);
return 0;
} |
Java
// Java program to print consecutive characters // together in a line. class GFG {
static void print(String str1)
{
char str[] = str1.toCharArray();
System.out.print(str[ 0 ]);
for ( int i = 1 ; i < str.length; i++) {
if ((str[i] == str[i - 1 ] + 1 )
|| (str[i] == str[i - 1 ] - 1 )) {
System.out.print(str[i]);
}
else {
System.out.print( "\n" + str[i]);
}
}
}
// Driver code
public static void main(String[] args)
{
String str = "ABCXYZACCD" ;
print(str);
}
} // This code is contributed by 29AjayKumar |
Python3
# Python3 program to print consecutive characters # together in a line. def _print(string):
print (string[ 0 ], end = "")
for i in range ( 1 , len (string)):
if ( ord (string[i]) = = ord (string[i - 1 ]) + 1 or
ord (string[i]) = = ord (string[i - 1 ]) - 1 ):
print (string[i], end = "")
else :
print ()
print (string[i], end = "")
# Driver Code if __name__ = = "__main__" :
string = "ABCXYZACCD"
_print(string)
# This code is contributed by # sanjeev2552 |
C#
// C# program to print consecutive characters // together in a line. using System;
class GFG {
static void print(String str1)
{
char [] str = str1.ToCharArray();
Console.Write(str[0]);
for ( int i = 1; i < str.Length; i++) {
if ((str[i] == str[i - 1] + 1)
|| (str[i] == str[i - 1] - 1)) {
Console.Write(str[i]);
}
else {
Console.Write( "\n" + str[i]);
}
}
}
// Driver code
public static void Main()
{
String str = "ABCXYZACCD" ;
print(str);
}
} // This code is contributed by PrinciRaj1992 |
Javascript
<script> // Javascript program to print consecutive // characters together in a line. function print(str1)
{ let str = str1.split( "" );
document.write(str[0]);
for (let i = 1; i < str.length; i++)
{
if ((str[i].charCodeAt(0) ==
str[i - 1].charCodeAt(0) + 1) ||
(str[i].charCodeAt(0) ==
str[i - 1].charCodeAt(0) - 1))
{
document.write(str[i]);
}
else
{
document.write( "<br>" + str[i]);
}
}
} // Driver code let str = "ABCXYZACCD" ;
print(str); // This code is contributed by rag2127 </script> |
Output
ABC XYZ A C CD
Time Complexity: O(n)
Auxiliary Space: O(1)
Recommended Articles