public class WY2 {     static int cost;     public static void main(String args[]) {         Scanner s = new Scanner(System.in);         int Numoftest = s.nextInt();         s.nextLine();         for(int outterCount=0; outterCount<Numoftest;outterCount++) {             String inputseq = s.nextLine();                          char[] position = new char[] {'A','S','D','F','G','H'};             cost = 0;             cost = getcost(inputseq,position);             allpailie(position,0,6,inputseq);             System.out.println(cost);         }     }          public static int getcost(String input, char[] position) {         int cost =0;         int lastposition=0;         for(int i=0;i<input.length();i++) {             char c = input.charAt(i);             for(int j=0;j<6;j++) {                 if(position[j] == c) {                                         cost = cost + Math.abs(j-lastposition);                     lastposition =j;                 }             }         }         return cost;     }          public static void allpailie(char[] position, int start,int end,String input) {         char temp;         if(start < end -1) {             allpailie(position, start+1, end,input);             for(int i= start+1;i<end;i++) {                 temp = position[start];                 position[start] = position[i];                 position[i] = temp;                 allpailie(position, start+1, end,input);                     temp = position[start];                 position[start] = position[i];                 position[i] = temp;             }                     }else {             int currentcost = getcost(input,position);             if(currentcost<cost) {                 cost=currentcost;             }         }     }      }
点赞 1

相关推荐

不愿透露姓名的神秘牛友
06-27 15:19
简历上能写3个月吗?
码农索隆:大胆写,主要你能把实习经历包装好,可以看一下我这篇帖子https://www.nowcoder.com/share/jump/4888395581180798063
点赞 评论 收藏
分享
点赞 评论 收藏
分享
龙珠传说:nb,公务员解约不需要支付违约金吧
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务