交换字符串的前半部分和后半部分
给定两个字符串和 .通过将其中一个字符串的前半部分和后半部分分别与另一个字符串的前半部分和后半部分交换来创建两个新字符串。
例子:
Input : fighter
warrior
Output :warhter
figrior
Input :remuneration
day
Output :dration
remuneay
在第一个示例中, fighter由fig和hter两部分组成。同样,战士也是由war和rior两部分组成。交换两个字符串的第一部分以创建两个新字符串warhter和figrior 。类似地,在第二个示例中,报酬的第一部分即remune与一天的第一部分交换以创建drration和remuneay 。
C++
// CPP code to create two new strings
// by swapping first and second halves
#include
using namespace std;
// Function to concatenate two
// different halves of given strings
void swapTwoHalves(string a , string b)
{
int la = a.length();
int lb = b.length();
// Creating new strings by
// exchanging the first half
// of a and b. Please refer below for
// details of substr.
// https://www.geeksforgeeks.org/stdsubstr-in-ccpp/
string c = a.substr(0, la/2) +
b.substr(lb/2, lb);
string d = b.substr(0, lb/2) +
a.substr(la/2, la);
cout << c << endl << d << endl;
}
// Driver function
int main()
{
string a = "remuneration";
string b = "day";
swapTwoHalves(a, b);
return 0;
}
Java
// Java code to create two new strings
// by swapping first and second halves
import java.io.*;
class ns
{
// Function to concatenate two
// different halves of given strings
public static void swapTwoHalves(String a,
String b)
{
int la = a.length();
int lb = b.length();
// Creating new strings by
// exchanging the first half
// of a and b. Please refer below
// for details of substring.
// https://www.geeksforgeeks.org/java-lang-string-substring-java/
String c = a.substring(0,la/2) +
b.substring(lb/2,lb);
String d = b.substring(0,lb/2) +
a.substring(la/2,la);
System.out.println(c + "\n" + d);
}
public static void main (String args[])
{
// Given strings
String a = "remuneration";
String b = "day";
// Calling function
swapTwoHalves(a, b);
}
}
Python3
# Python 3 code to create two new strings
# by swapping first and second halves
# Function to concatenate two
# different halves of given strings
def swapTwoHalves( a ,b) :
la = len(a)
lb = len(b)
# Creating new strings by
# exchanging the first half
# of a and b. Please refer below for
# details of substr.
# https://www.geeksforgeeks.org/stdsubstr-in-ccpp/
c = a[0:la//2] + b[lb//2: lb]
d = b[0: lb//2] + a[la//2: la]
print( c, "\n" , d )
# Driver function
a = "remuneration"
b = "day"
swapTwoHalves(a, b)
# This code is contributed by Nikita Tiwari
C#
// C# code to create two
// new strings by swapping
// first and second halves
using System;
class GFG
{
// Function to concatenate
// two different halves
// of given strings
static void swapTwoHalves(string a ,
string b)
{
int la = a.Length;
int lb = b.Length;
// Creating new strings
// by exchanging the
// first half of a and b.
string c = a.Substring(0, la / 2) +
b.Substring(lb / 2,
lb / 2 + 1);
string d = b.Substring(0, lb / 2) +
a.Substring(la / 2,
la / 2);
Console.Write (c + "\n" +
d + "\n");
}
// Driver Code
static void Main()
{
string a = "remuneration";
string b = "day";
swapTwoHalves(a, b);
}
}
// This code is contributed by
// Manish Shaw(manishshaw1)
PHP
Javascript
输出:
remuneay
dration