-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathchuck-norris-v1.java
More file actions
43 lines (38 loc) · 1.27 KB
/
chuck-norris-v1.java
File metadata and controls
43 lines (38 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.util.*;
import java.io.*;
import java.math.*;
/**
* Auto-generated code below aims at helping you parse
* the standard input according to the problem statement.
**/
class Solution {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String MESSAGE = in.nextLine();
char[] cArray = MESSAGE.toCharArray();
StringBuilder answer = new StringBuilder();
StringBuilder binaryString = new StringBuilder();
for (char stringChar : cArray) {
binaryString.append((String) String.format("%7s", Integer.toBinaryString((int) stringChar)).replace(' ', '0'));
}
String groups[] = binaryString.toString().split("(?<=1)(?=0)|(?<=0)(?=1)");
int counter = 0;
for (String group : groups) {
//System.err.println(group);
if (group.contains("0")) {
answer.append("00 ");
}
else {
answer.append("0 ");
}
for (int i = 0; i < group.length(); i++) {
answer.append("0");
}
if (counter < groups.length - 1) {
answer.append(" ");
counter++;
}
}
System.out.println(answer.toString());
}
}