IPv6 地址采用冒号十六进制记法表示,由 32 位长十六进制数构成,每 4 位分为一组,每组之间用冒号分割。例如,一个 IPv6 地址可以是:68E6:8C64:FFFF:FFFF:0000:1180:960A:FFFF
。
为了表述简单,我们会这样缩写IPv6地址:
060A
, 0013
, 0000
分别可以写为 60A
, 13
, 0
。0000
可以用一对冒号取代。例如 FF05:0:0:0:0:0:0:B3
压缩为 FF05::B3
。在任一地址中只能使用一次零压缩。给定简写的 IPv6 地址,请你求出它的完整形式。
输入
输入一行一个字符串,由英文半角冒号和十六进制位(英文字母大写)组成,代表简写 IPv6 地址。
输出
输出一行一个字符串,由英文半角冒号和十六进制位(英文字母大写)组成,代表完整 IPv6 地址。
样例
标准输入 复制文本 |
68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF |
标准输出 复制文本 |
68E6:8C64:FFFF:FFFF:0000:1180:960A:FFFF |
标准输入 复制文本 |
FF05::B3 |
标准输出 复制文本 |
FF05:0000:0000:0000:0000:0000:0000:00B3 |
标准输入 复制文本 |
::1 |
标准输出 复制文本 |
0000:0000:0000:0000:0000:0000:0000:0001 |
提示
保证输入的地址符合简写语法,即不会出现语法不合法地址(但不保证输入的地址在现实世界真实存在)。
来源
2023 天梯赛选拔赛 (重现)