题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
   let line = await readline();
   let arr = line.split('.').map((v)=>parseInt(v).toString(2));
   for(let i = 0; i < arr.length; i++){
       if(arr[i].length < 8){
           let diff =  8 - arr[i].length;
            for(let j = 0; j < diff; j++){
                arr[i] = '0'+arr[i];
            }
       }
   }
   console.log(parseInt(arr.join(''), 2));
   line = await readline();
   let str = parseInt(line).toString(2);
   if(str.length < 32){
       let diff =  32 - str.length;
       for(let j = 0; j < diff; j++){
           str = '0'+str;
       }
   }
   for(let i = 0; i < 4; i++){
       arr[3 - i] = parseInt(str.substring(32 - 8*(i+1), 32 - i*8), 2);
   }
   console.log(arr.join('.'));
}()

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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