#720. 十进制转八进制

十进制转八进制

十进制转八进制

题目描述

给定一个非负整数 nn,请将其转换为八进制表示,并输出对应的八进制字符串。

八进制是一种逢八进一的计数系统,每一位上的数字只能是 0,1,2,3,4,5,6,70, 1, 2, 3, 4, 5, 6, 7 之一。例如,八进制数 (123)8(123)_8 表示:$1 \times 8^2 + 2 \times 8^1 + 3 \times 8^0 = 64 + 16 + 3 = 83$。所以十进制数 8383 的八进制表示为 123123

输入格式

输入一行,包含一个非负整数 nn

输出格式

输出一行,为 nn 的八进制表示。八进制字符串不应包含前导零(但数字 00 本身应输出 0)。

样例输入

样例输入 1

83

样例输入 2

0

样例输入 3

64

样例输出

样例输出 1

123

样例输出 2

0

样例输出 3

100

样例解释

对于第一个样例,输入 n=83n=83。使用短除法转换为八进制:83÷8=1083 \div 8 = 103310÷8=110 \div 8 = 1221÷8=01 \div 8 = 011。将余数逆序排列,得到 123123,因此输出 123123

数据范围

  • 0n<2310 \le n < 2^{31}(即 nn 在 C/C++ 的 int 类型能表示的非负范围内)。
  • 时间限制:11 秒。
  • 内存限制:256256 MB。