You've successfully subscribed to The Poor Coder | Hackerrank Solutions
Great! Next, complete checkout for full access to The Poor Coder | Hackerrank Solutions
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Hackerrank Strings Solution

Hackerrank Strings Solution

Beeze Aal
Beeze Aal

C++ provides a nice alternative data type to manipulate strings, and the data type is conveniently called string. Some of its widely used features are the following:

Declaration:

string a = "abc";

Size:

int len = a.size();

Concatenate two strings:

string a = "abc";
string b = "def";
string c = a + b; // c = "abcdef".

Accessing  element:

string s = "abc";
char   c0 = s[0];   // c0 = 'a'
char   c1 = s[1];   // c1 = 'b'
char   c2 = s[2];   // c2 = 'c'

s[0] = 'z';         // s = "zbc"

P.S.: We will use cin/cout to read/write a string.

Input Format

You are given two strings,  and , separated by a new line. Each string will consist of lower case Latin characters ('a'-'z').

Output Format

In the first line print two space-separated integers, representing the length of  and  respectively.
In the second line print the string produced by concatenating  and  ().
In the third line print two strings separated by a space,  and .  and  are the same as  and , respectively, except that their first characters are swapped.

Sample Input

abcd
ef

Sample Output

4 2
abcdef
ebcd af

Explanation

  • "abcd"
  • "ef"
  • "abcdef"
  • "ebcd"
  • "af"

Solution in cpp

Approach 1.

#include <iostream>
#include <string>
using namespace std;

int main() {
 string a,b;
    char temp;
    cin>>a>>b;
    cout<<a.size()<<' '<<b.size()<<endl;
    cout<<a+b<<endl;
    temp=a[0];
    a[0]=b[0];
    b[0]=temp;
    cout<<a<<' '<<b;
  
    return 0;
}

Approach 2.

#include <iostream>
#include <string>
using namespace std;

int main() {
  string a,b;
    char i,j;
    int c,d;
   cin>>a;
    cin>>b;
  c=a.size();
    d=b.size();
    cout<<c<<" "<<d<<"\n";
     cout<<a+b<<"\n";
    i=b[0];
   b[0]=a[0];
    a[0]=i;
    cout<<a<<" ";
    cout<<b;
    return 0;
}

  

Approach 3.

#include <iostream>
#include <string>
using namespace std;

int main() {
    std::string a, b;
    std::cin >> a >> b;
    
    std::cout << a.size() << " " << b.size() << std::endl
              << a + b << std::endl;
    
    std::swap(a[0], b[0]);
    std::cout << a << " " << b;
    
    return 0;
}