Little Vihu loves special strings.

Little Vihu loves special strings. According to him, special strings are those which have largest P(s) value. P(s) is defined as follows for a string 's' of length n with 0-based indexing-->



import java.util.*;
import java.lang.*;

class TestClass {
   
    ArrayList s1=new ArrayList<>();
Double[] sumOf1String;
    HashMap s11 = new HashMap<>();
   
    public static void main(String args[] ) throws Exception {
        //Scanner
        Scanner s = new Scanner(System.in);
        String name = s.nextLine();   
        TestClass sobj=new TestClass();
        if(name.length()<=15)
        sobj.getData(name);
    }
   
    public void getData(String s){
sumOf1String=new Double[s.length()];
for(int i=0;i {
s1.add(partionString(s,i));
}

for(int i=0;i {
String swapString1=s1.get(i);
double sum=0.0;
for(int j=0;j {
sum +=getCharacterValue(swapString1.charAt(j))/calculate_Power(j);
}
sumOf1String[i]=sum;
s11.put(sum,swapString1);
}
Arrays.sort(sumOf1String);
System.out.println(s11.get(sumOf1String[sumOf1String.length-1]));

}

public double calculate_Power(int i)
{
return Math.pow(2,i);
}

public double getCharacterValue(char g)
{
int index=1;
for(int c=97;c<=122;c++)
{
if((int)g==c)
{
break;
}else
{
index++;
}
}
return index;
}

public String partionString(String s,int i)
{
String value1="";
String value2="";
for(int a=0;a<=i;a++)
{
value1 +=s.charAt(a);
}
for(int a=i+1;a {
value2 +=s.charAt(a);
}
return value2+value1;
}
}





Comments