http://acm.fjnu.edu.cn/show?problem_id=3008
在>或<情况下可能不存在完美字符串。
 import java.util.*;
import java.util.*;
 import java.io.*;
import java.io.*;


 public class ACM_3008
public class ACM_3008 {
{
 
    

 public static void sort1(String s,char[] c)
    public static void sort1(String s,char[] c) {
{
 int i,j,k,n=c.length;
        int i,j,k,n=c.length;
 boolean find=true;
        boolean find=true;

 for(i=0;i<n-1 && find;i++)
        for(i=0;i<n-1 && find;i++) {
{
 char t=c[i];
            char t=c[i];
 k=i;
            k=i;

 for(j=i+1;j<n;j++)
            for(j=i+1;j<n;j++) {
{

 if(c[j]>t)
                if(c[j]>t) {
{
 t=c[j];
                    t=c[j];
 k=j;
                    k=j;
 }
                }

 else if(c[j]==t)
                else if(c[j]==t) {
{
 find=false;
                    find=false;
 break;
                    break;
 }
                }
 }
            }
 if(k!=i)
            if(k!=i)

 
             {
{
 char tmp=c[i];
                char tmp=c[i];
 c[i]=c[k];
                c[i]=c[k];
 c[k]=tmp;
                c[k]=tmp;
 }
            }
 }
        }

 if(find)
        if(find) {
{
 for(i=0;i<n;i++)
            for(i=0;i<n;i++)
 System.out.print(c[i]);
                System.out.print(c[i]);
 System.out.println();
            System.out.println();
 }
        }
 else
        else
 System.out.println(s);
            System.out.println(s);
 }
    }
 
    

 public static void sort2(String s,char[] c)
    public static void sort2(String s,char[] c) {
{
 int i,j,k,n=c.length;
        int i,j,k,n=c.length;
 boolean find=true;
        boolean find=true;

 for(i=0;i<n-1 && find;i++)
        for(i=0;i<n-1 && find;i++) {
{
 char t=c[i];
            char t=c[i];
 k=i;
            k=i;

 for(j=i+1;j<n;j++)
            for(j=i+1;j<n;j++) {
{

 if(c[j]<t)
                if(c[j]<t) {
{
 t=c[j];
                    t=c[j];
 k=j;
                    k=j;
 }
                }

 else if(c[j]==t)
                else if(c[j]==t) {
{
 find=false;
                    find=false;
 break;
                    break;
 }
                }
 }
            }
 if(k!=i)
            if(k!=i)

 
             {
{
 char tmp=c[i];
                char tmp=c[i];
 c[i]=c[k];
                c[i]=c[k];
 c[k]=tmp;
                c[k]=tmp;
 }
            }
 }
        }

 if(find)
        if(find) {
{
 for(i=0;i<n;i++)
            for(i=0;i<n;i++)
 System.out.print(c[i]);
                System.out.print(c[i]);
 System.out.println();
            System.out.println();
 }
        }
 else
        else
 System.out.println(s);
            System.out.println(s);
 }
    }
 
    

 public static void sort3(char[] c)
    public static void sort3(char[] c) {
{
 int i,j,k,n=c.length;
        int i,j,k,n=c.length;

 for(i=0;i<n-1;i++)
        for(i=0;i<n-1;i++) {
{
 char t=c[i];
            char t=c[i];
 k=i;
            k=i;

 for(j=i+1;j<n;j++)
            for(j=i+1;j<n;j++) {
{

 if(c[j]>=t)
                if(c[j]>=t) {
{
 t=c[j];
                    t=c[j];
 k=j;
                    k=j;
 }
                }
 }
            }
 if(k!=i)
            if(k!=i)

 
             {
{
 char tmp=c[i];
                char tmp=c[i];
 c[i]=c[k];
                c[i]=c[k];
 c[k]=tmp;
                c[k]=tmp;
 }
            }
 }
        }
 for(i=0;i<n;i++)
        for(i=0;i<n;i++)
 System.out.print(c[i]);
            System.out.print(c[i]);
 System.out.println();
        System.out.println();
 }
    }
 
    

 public static void sort4(char[] c)
    public static void sort4(char[] c) {
{
 int i,j,k,n=c.length;
        int i,j,k,n=c.length;

 for(i=0;i<n-1;i++)
        for(i=0;i<n-1;i++) {
{
 char t=c[i];
            char t=c[i];
 k=i;
            k=i;

 for(j=i+1;j<n;j++)
            for(j=i+1;j<n;j++) {
{

 if(c[j]<=t)
                if(c[j]<=t) {
{
 t=c[j];
                    t=c[j];
 k=j;
                    k=j;
 }
                }
 }
            }
 if(k!=i)
            if(k!=i)

 
             {
{
 char tmp=c[i];
                char tmp=c[i];
 c[i]=c[k];
                c[i]=c[k];
 c[k]=tmp;
                c[k]=tmp;
 }
            }
 }
        }
 for(i=0;i<n;i++)
        for(i=0;i<n;i++)
 System.out.print(c[i]);
            System.out.print(c[i]);
 System.out.println();
        System.out.println();
 }
    }
 
    
 public static void main(String rgs[]) throws Exception
    public static void main(String rgs[]) throws Exception

 
     {
{
 BufferedReader stdin =
        BufferedReader stdin = 
 new BufferedReader(
            new BufferedReader(
 new InputStreamReader(System.in));
                new InputStreamReader(System.in));        
 String line = stdin.readLine();
        String line = stdin.readLine();
 String s = line;
        String s = line;
 char[] c = s.toCharArray();
        char[] c = s.toCharArray();
 line = stdin.readLine();
        line = stdin.readLine();
 String t = line;
        String t = line;
 if(t.equals(">"))
        if(t.equals(">"))
 sort1(s,c);
            sort1(s,c);
 else if(t.equals("<"))
        else if(t.equals("<"))
 sort2(s,c);
            sort2(s,c);
 else if(t.equals(">="))
        else if(t.equals(">="))
 sort3(c);
            sort3(c);
 else
        else
 sort4(c);
            sort4(c);
 }
    }
 }
}posted on 2009-10-17 10:14 
飞翔天使 阅读(250) 
评论(0)  编辑  收藏  所属分类: 
ACM