Hackerrank Strings Solution
2 min read

Hackerrank Strings Solution

Hackerrank Strings Solution

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;
}

Enjoying these posts? Subscribe for more


Adblocker detected! Please consider reading this notice.

We've detected that you are using AdBlock Plus or some other adblocking software which is preventing the page from fully loading.

That's okay. But without advertising-income, we can't keep making this site awesome.

We don't have any banner, Flash, animation, obnoxious sound, or popup ad. We do not implement these annoying types of ads!

We need money to operate the site, and almost all of it comes from our online advertising.

Please add thepoorcoder.com to your ad blocking whitelist or disable your adblocking software.

×