Скачиваний:
32
Добавлен:
15.06.2014
Размер:
1.66 Кб
Скачать
package moii.lab1;

import java.io.*;
import java.util.*;


public class Main {

private Set chars = new HashSet();
private HashMap charsValues = new HashMap();

public Main(String source){
int []a;
a=getChars(source);
String copy;
while (a[chars.size()]==0)
{
copy=source;
copy=release(copy,a);
showcharValue(a);
System.out.println(" "+copy);
a=generateNext(a);
}
}
public String release(String copy,int[] a)
{
int j=0;
for(Iterator i=chars.iterator();i.hasNext();){
Character int1 = (Character)i.next();

copy.replaceAll( int1+"", a[((Integer)charsValues.get(int1)).intValue()]+"");

// System.out.print(int1);
j++;
}
// System.out.println();
return copy;
}
public int[] getChars(String source){
for(int i=0;i<source.length();i++)
if(source.charAt(i)>='A'&& source.charAt(i)<='Z'){
chars.add(source.charAt(i));
if ((Integer)charsValues.get(source.charAt(i))==0)
charsValues.put(source.charAt(i), i);
System.out.print(charsValues.get(source.charAt(i)));

}
int a[]=new int[chars.size()+1];
return a;
}

public int[] generateNext(int[] a)
{
int i;
for (i=0;i<a.length;i++)
if (a[i]==1)
{
a[i]=0;
}else break;
a[i]=1;
return a;
}
public void showcharValue(int[] a)
{
for (int i = 0 ; i < a.length ; i++)
System.out.print(a[i]);
}

public static void main(String[] a) throws Exception{
byte[] b = new byte[256];
int k= System.in.read(b);
String source = new String(b);
source=source.substring(0, k-2);
new Main(source);
}
}
Соседние файлы в папке lab1