Source : https://www.hackerrank.com/challenges/30-review-loop
Objective
Today we're expanding our knowledge of Strings and combining it with what we've already learned about loops. Check out the Tutorial tab for learning materials and an instructional video!
Task
Given a string, , of length that is indexed from to , print its even-indexed and odd-indexed characters as space-separated strings on a single line (see the Sample below for more detail).
Note: is considered to be an even index.
Input Format
The first line contains an integer, (the number of test cases).
Each line of the subsequent lines contain a String, .
Constraints
Output Format
For each String (where ), print 's even-indexed characters, followed by a space, followed by 's odd-indexed characters.
Sample Input
2
Hacker
Rank
Sample Output
Hce akrRn ak
Explanation
Test Case 0:
The even indices are , , and , and the odd indices are , , and . We then print a single line of space-separated strings; the first string contains the ordered characters from 's even indices (), and the second string contains the ordered characters from 's odd indices ().
Test Case 1:
The even indices are and , and the odd indices are and . We then print a single line of space-separated strings; the first string contains the ordered characters from 's even indices (), and the second string contains the ordered characters from 's odd indices ().
Source : https://www.hackerrank.com/challenges/30-review-loop
Solution
// Karthikalapati.blogspot.com | |
import java.util.Scanner; | |
public class Solution { | |
public static void main(String[] args) { | |
Scanner scan = new Scanner(System.in); | |
int T = scan.nextInt(); | |
for (int i = 0; i < T; i++) { | |
String str = scan.next(); | |
printEvensOdds(str); | |
} | |
scan.close(); | |
} | |
/* For efficient appending, use a StringBuffer instead of a String */ | |
public static void printEvensOdds(String str) { | |
StringBuffer evens = new StringBuffer(); | |
StringBuffer odds = new StringBuffer(); | |
for (int i = 0; i < str.length(); i++) { | |
char ch = str.charAt(i); | |
if (i % 2 == 0) { | |
evens.append(ch); | |
} else { | |
odds.append(ch); | |
} | |
} | |
System.out.println(evens + " " + odds); | |
} | |
} |
No comments:
Post a Comment