七月


私信TA

用户名:yuzefeng

访问量:905

签 名:

等  级
排  名 1258
经  验 2127
参赛次数 0
文章发表 38
年  龄 0
在职情况 学生
学  校 成都理工大学
专  业

  自我简介:

解题思路:题目不难,就是转完而精致再转回来,但是题目的描述有点恶心

注意事项:

注意题目中说的是从右端开始的第四到第七位,但是截取出来的数字还是要求从左往右计算的。我注释了很多测试代码,直到最后面看了其他人题解才明白过来

参考代码:

package cn.yzf.clanguageTest;
import java.util.*;

public class Main {
   public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
         int n = scanner.nextInt();
         StringBuffer sbuf = new StringBuffer();
         sbuf.append(Integer.toBinaryString(n));     //数据存储并转化为二进制
       //System.out.println(sbuf.reverse());
         sbuf = sbuf.reverse();
         String str = sbuf.substring(4,8);   //截取
         StringBuffer sbf = new StringBuffer();
         sbf.append(str);
         sbf = sbf.reverse();   //对截取的数字进行逆序
         str = sbf.toString();
         //String str=sbuf.substring(sbuf.length()-8, sbuf.length()-4);   //另一种截取方式
         //int a =Integer.parseInt(String.valueOf(str));    //测试二进制数据是否正确
         int a =Integer.parseInt(String.valueOf(str),2);

         System.out.println(a);

   }
}


//        =============Dragon be here!==========/
//            ┏┓   ┏┓
//           ┏┛┻━━━┛┻┓
//           ┃       ┃
//           ┃   ━   ┃
//           ┃ ┳┛ ┗┳ ┃
//           ┃       ┃
//           ┃   ┻   ┃
//           ┃       ┃
//           ┗━┓   ┏━┛
//             ┃   ┃神兽保佑
//             ┃   ┃代码无BUG!
//             ┃   ┗━━━┓
//             ┃       ┣┓
//             ┃       ┏┛
//             ┗┓┓┏━┳┓┏┛
//              ┃┫┫ ┃┫┫
//              ┗┻┛ ┗┻┛
//         ━━━━━━神兽出没━━━━━━

 

0.0分

0 人评分

  评论区