/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
// your code goes here
String s
= "1B151511584E461A0B07020F16410C0002400C0C163E0B57"; int len = s.length();
byte[] r = new byte[len / 2];
for (int i = 0; i < r.length; i++) {
int digit1 = s.charAt(i * 2), digit2 = s.charAt(i * 2 + 1);
if (digit1 >= '0' && digit1 <= '9')
digit1 -= '0';
else if (digit1 >= 'A' && digit1 <= 'F')
digit1 -= 'A' - 10;
if (digit2 >= '0' && digit2 <= '9')
digit2 -= '0';
else if (digit2 >= 'A' && digit2 <= 'F')
digit2 -= 'A' - 10;
r[i] = (byte) ((digit1 << 4) + digit2);
}
String key
= "sambosivasambo"; char[] msg = newStr.toCharArray();
char temp;
StringBuilder cipher = new StringBuilder();
for(int i=0, l = msg.length, l1 = key.length()-1; i < l; i++) {
temp = key.charAt(l1 % (i+1));
cipher.append((char)(temp ^ msg[i]));
}
System.
out.
println(" cipher : " + cipher.
toString()); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCQlTdHJpbmcgcyA9ICIxQjE1MTUxMTU4NEU0NjFBMEIwNzAyMEYxNjQxMEMwMDAyNDAwQzBDMTYzRTBCNTciOwoJCWludCBsZW4gPSBzLmxlbmd0aCgpOwogICAgICBieXRlW10gciA9IG5ldyBieXRlW2xlbiAvIDJdOwogICAgICBmb3IgKGludCBpID0gMDsgaSA8IHIubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIGludCBkaWdpdDEgPSBzLmNoYXJBdChpICogMiksIGRpZ2l0MiA9IHMuY2hhckF0KGkgKiAyICsgMSk7CiAgICAgICAgICBpZiAoZGlnaXQxID49ICcwJyAmJiBkaWdpdDEgPD0gJzknKQogICAgICAgICAgICAgIGRpZ2l0MSAtPSAnMCc7CiAgICAgICAgICBlbHNlIGlmIChkaWdpdDEgPj0gJ0EnICYmIGRpZ2l0MSA8PSAnRicpCiAgICAgICAgICAgICAgZGlnaXQxIC09ICdBJyAtIDEwOwogICAgICAgICAgaWYgKGRpZ2l0MiA+PSAnMCcgJiYgZGlnaXQyIDw9ICc5JykKICAgICAgICAgICAgICBkaWdpdDIgLT0gJzAnOwogICAgICAgICAgZWxzZSBpZiAoZGlnaXQyID49ICdBJyAmJiBkaWdpdDIgPD0gJ0YnKQogICAgICAgICAgICAgIGRpZ2l0MiAtPSAnQScgLSAxMDsKCiAgICAgICAgICByW2ldID0gKGJ5dGUpICgoZGlnaXQxIDw8IDQpICsgZGlnaXQyKTsKICAgICAgfQogICAgICBTdHJpbmcgbmV3U3RyID0gbmV3IFN0cmluZyhyLCAiVVRGLTgiKTsKICAgICAgU3RyaW5nIGtleSA9ICJzYW1ib3NpdmFzYW1ibyI7CgkgIGNoYXJbXSBtc2cgPSBuZXdTdHIudG9DaGFyQXJyYXkoKTsKCSAgY2hhciB0ZW1wOwoJICBTdHJpbmdCdWlsZGVyIGNpcGhlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7CgkgIGZvcihpbnQgaT0wLCBsID0gbXNnLmxlbmd0aCwgbDEgPSBrZXkubGVuZ3RoKCktMTsgaSA8IGw7IGkrKykgewoJCSAgdGVtcCA9IGtleS5jaGFyQXQobDEgJSAoaSsxKSk7CgkJICBjaXBoZXIuYXBwZW5kKChjaGFyKSh0ZW1wIF4gbXNnW2ldKSk7CgkgIH0KIAkJU3lzdGVtLm91dC5wcmludGxuKCIgY2lwaGVyIDogIiArIGNpcGhlci50b1N0cmluZygpKTsKCX0KfQ==