转成二进制,按六位二进制转成十进制,然后直接取数,看情况加=,AC import java.util.Scanner; public class Main {     public static void main(String[] args){         String data=input();         String res=cal(data);         System.out.println(res);     }     private static String cal(String data) {         String s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";         StringBuilder binary=tranferBinary(data);         if(data.length()%3==1){             while (binary.length()%6!=0){                 binary.append("0");             }             StringBuilder builder=new StringBuilder(cal3(binary,s));             builder.append("==");             return builder.toString();         }         else if(data.length()%3==2){             while (binary.length()%6!=0){                 binary=binary.append(0);             }             StringBuilder builder=new StringBuilder(cal3(binary,s));             builder.append("=");             return builder.toString();         }         else {             return cal3(binary,s);         }     }     private static String cal3(StringBuilder data,String pattern){         int flag=0;         StringBuilder res=new StringBuilder();         StringBuilder temp=new StringBuilder();         for(int i=0,length=data.length();i<length;i++){             temp.append(data.charAt(i));             flag++;             if(flag%6==0){                 int index=Integer.parseInt(temp.toString(),2);                 res.append(pattern.charAt(index));                 temp=new StringBuilder();             }         }         return res.toString();     }     private static StringBuilder tranferBinary(String data){         char[] chars=data.toCharArray();         StringBuilder builder=new StringBuilder();         for(char temp:chars){             String s=Integer.toBinaryString((int)temp);             if(s.length()<8){                 for(int i=s.length();i<8;i++){                     builder.append("0");                 }             }             builder.append(s);         }         return builder;     }     private static String input() {         Scanner sc=new Scanner(System.in);         return sc.nextLine();     } }
点赞 评论

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务