隨筆 - 147  文章 - 71  trackbacks - 0
          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類(146)

          隨筆檔案(147)

          文章分類(28)

          文章檔案(28)

          喜歡的Blog

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

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

          public class ACM_3008{
              
              
          public static void sort1(String s,char[] c){
                  
          int i,j,k,n=c.length;
                  
          boolean find=true;
                  
          for(i=0;i<n-1 && find;i++){
                      
          char t=c[i];
                      k
          =i;
                      
          for(j=i+1;j<n;j++){
                          
          if(c[j]>t){
                              t
          =c[j];
                              k
          =j;
                          }

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

                      }

                      
          if(k!=i)
                      
          {
                          
          char tmp=c[i];
                          c[i]
          =c[k];
                          c[k]
          =tmp;
                      }

                  }

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

                  
          else
                      System.out.println(s);
              }

              
              
          public static void sort2(String s,char[] c){
                  
          int i,j,k,n=c.length;
                  
          boolean find=true;
                  
          for(i=0;i<n-1 && find;i++){
                      
          char t=c[i];
                      k
          =i;
                      
          for(j=i+1;j<n;j++){
                          
          if(c[j]<t){
                              t
          =c[j];
                              k
          =j;
                          }

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

                      }

                      
          if(k!=i)
                      
          {
                          
          char tmp=c[i];
                          c[i]
          =c[k];
                          c[k]
          =tmp;
                      }

                  }

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

                  
          else
                      System.out.println(s);
              }

              
              
          public static void sort3(char[] c){
                  
          int i,j,k,n=c.length;
                  
          for(i=0;i<n-1;i++){
                      
          char t=c[i];
                      k
          =i;
                      
          for(j=i+1;j<n;j++){
                          
          if(c[j]>=t){
                              t
          =c[j];
                              k
          =j;
                          }

                      }

                      
          if(k!=i)
                      
          {
                          
          char tmp=c[i];
                          c[i]
          =c[k];
                          c[k]
          =tmp;
                      }

                  }

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

              
              
          public static void sort4(char[] c){
                  
          int i,j,k,n=c.length;
                  
          for(i=0;i<n-1;i++){
                      
          char t=c[i];
                      k
          =i;
                      
          for(j=i+1;j<n;j++){
                          
          if(c[j]<=t){
                              t
          =c[j];
                              k
          =j;
                          }

                      }

                      
          if(k!=i)
                      
          {
                          
          char tmp=c[i];
                          c[i]
          =c[k];
                          c[k]
          =tmp;
                      }

                  }

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

              
              
          public static void main(String rgs[]) throws Exception
              
          {
                  BufferedReader stdin 
          = 
                      
          new BufferedReader(
                          
          new InputStreamReader(System.in));        
                  String line 
          = stdin.readLine();
                  String s 
          = line;
                  
          char[] c = s.toCharArray();
                  line 
          = stdin.readLine();
                  String t 
          = line;
                  
          if(t.equals(">"))
                      sort1(s,c);
                  
          else if(t.equals("<"))
                      sort2(s,c);
                  
          else if(t.equals(">="))
                      sort3(c);
                  
          else
                      sort4(c);
              }

          }
          posted on 2009-10-17 10:14 飛翔天使 閱讀(240) 評論(0)  編輯  收藏 所屬分類: ACM
          主站蜘蛛池模板: 南开区| 常州市| 十堰市| 安丘市| 玉龙| 安溪县| 正宁县| 岳阳县| 蕉岭县| 洛浦县| 满洲里市| 霍邱县| 金湖县| 东至县| 安阳市| 醴陵市| 阳东县| 肥城市| 额尔古纳市| 旺苍县| 南召县| 枞阳县| 邯郸县| 江北区| 资溪县| 汽车| 永德县| 大余县| 喀喇| 浏阳市| 乡城县| 淮安市| 吉安市| 溆浦县| 堆龙德庆县| 华坪县| 民和| 隆尧县| 盐源县| 项城市| 长子县|