计蒜客一次失败的代码经历

代码题目网址是https://nanti.jisuanke.com/t/92

第一次写博客,代码啥都没保存,只剩下这个了

import java.util.*;

public class Main {

  int i =0;

  public String[] paixu(String[] strings){

    String[] result = new String[strings.length];

    for(int j = 0 ;j<strings.length;j++){
      String max = "";
      for(int i = 0 ;i<strings.length;i++){
        if(max.compareTo(strings[i])<0){
          boolean flag = true;
          for(String s:result){
            if(s!=null && strings[i].equals(s))
              flag = false;
          }
          if(flag)
            max=strings[i];
        }
      }
      result[strings.length-1-j]=max;
    }

    return result;
  }

  public int bijiao(String newSting,String[] oldStrings){

    for (int i = 0; i < oldStrings.length; i++) {
      if (oldStrings[i].equals(newSting))
        return i;
    }

    return -1;

  }

  public Main() {
    Scanner in = new Scanner(System.in);
    int L = Integer.parseInt(in.nextLine());
    String str = in.nextLine();
    while(L>72 && str.length()%72==0 && in.hasNext())
      str+=in.nextLine();
    if(str.length()!=L)
      return;
    String[] strings = new String[L];
    for( int i =0 ;i<L;i++){
      String temp = "";
      temp = str.substring(i)+str.substring(0, i);
      strings[i] = temp;
    }
    System.out.println(bijiao(paixu(strings)[0], strings));

  }

  public static void main(String[] args) {
    new Main();
  }
}

 

然后改进到最后是这个样子:

import java.util.*;

public class Main {

  public Main() {
    Scanner in = new Scanner(System.in);
    int L = Integer.parseInt(in.nextLine());
    String str = in.nextLine();
    while(L>72 && str.length()%72==0 && in.hasNext())
      str+=in.nextLine();
    if(str.length()!=L)
      return;
    String min =str;
    int n = 0;
    for( int i =0 ;i<L;i++){
      if(str.compareTo(min)<0){
        min=str;
        n=i;
      }
      str = str.substring(1)+str.substring(0, 1);
    }
    System.out.println(n);
  }

  public static void main(String[] args) {
    new Main();
  }
}

 

然并卵,到第8组测试运行超时。。明明就只有一个for循环

 

求解。。

posted @ 2017-05-26 12:58  gjjca  阅读(335)  评论(0编辑  收藏  举报