题解 | #整数与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 () { const ip = await readline(); const num = parseInt(await readline()); const ipToNumber = (ip) => { let str = ip .split(".") .reduce( (pre, cur) => pre + Number(cur).toString(2).padStart(8, 0), "" ); return parseInt(str, 2); }; const numberToIp = (num) => { let str = num.toString(2).padStart(32, 0); let res = parseInt(str.slice(0, 8),2); for (let i = 8; i <= 24; i += 8) { res += "." + parseInt(str.slice(i, i + 8), 2); } return res; }; console.log(ipToNumber(ip)); console.log(numberToIp(num)); })();
华为OD,我昵称“od400” 文章被收录于专栏
华为OD机试刷题历程,因涉及华为权益,牛客不允许更新了。我昵称“od400”,某博客继续更新。