包含多组测试数据,每组测试数据包含两行,代表长度相等的两个字符串S1和S2(仅由小写字母组成,长度不超过100)。
合并后的新字符串S
abc def
afbecd
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
char[] s1 = br.readLine().toCharArray();
char[] s2 = br.readLine().toCharArray();
int len = s1.length + s2.length;
char[] chars = new char[len];
int flag = 0;
int k1=0,k2=s2.length-1;
for (int i = 0; i < len; i++) {
if (flag == 0) {
chars[i] = s1[k1++];
flag = 1;
} else {
chars[i] = s2[k2--];
flag = 0;
}
}
for (int i = 0; i < len; i++) {
System.out.print(chars[i]);
}
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
char[] a = scanner.next().toCharArray();
char[] b = scanner.next().toCharArray();
StringBuilder builder = new StringBuilder();
int i= 0;
int j= b.length-1;
while (i<a.length||j>=0) builder.append(a[i++]).append(b[j--]);
System.out.println(builder.toString());
}
}
import java.util.*;
import java.lang.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
String s1 = sc.nextLine();
String s2 = sc.nextLine();
StringBuffer sb = new StringBuffer();
for(int i = 0;i<s1.length();i++){
sb.append(s1.charAt(i));
sb.append(s2.charAt(s2.length()-i-1));
}
System.out.println(sb);
}
}
}
可以说是很简单了,但是千万不要想得太复杂,一开始就想着用双层循环。。ummm,一个就可以了。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(in.hasNext()) {
String s1 = in.next().trim();
String s2 = in.next().trim();
for(int i = 0; i < s1.length(); i++) {
int index = s1.length() - i - 1;
System.out.print(s1.charAt(i) + "" + s2.charAt(index));
}
}
}
}