首页 > 试题广场 >

D进制的A+B (20)

[编程题]D进制的A+B (20)
  • 热度指数:20366 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数。

输入描述:
输入在一行中依次给出3个整数A、B和D。


输出描述:
输出A+B的D进制数。
示例1

输入

123 456 8

输出

1103
a, b, d = map(int, input().split())
sum = a + b
quotient = 1 mods = [] while quotient != 0:
    quotient = sum // d
    mods.append(str(sum%d))
    sum = quotient
mods.reverse() print("".join(mods))

发表于 2019-09-08 13:53:21 回复(0)
a, b, D = [eval(i) for i in input().split()]
n = a + b
L = []
while n:
    L.insert(0, n % D)
    n //= D
print(''.join([str(i) for i in L]))

发表于 2019-08-28 09:56:28 回复(0)
# -*-coding:utf-8-*-
if __name__ == '__main__':
    a, b, d = map(int, input().split())
    num = a + b
    result = ''
    while num:
        result = str(num % d) + result
        num = num // d
    print(result)
编辑于 2019-05-13 13:42:25 回复(0)
a,b,c=map(int,input().split())
y=a+b
ls=[]
while y >0:
    ls.append(str(y%c))
    y=y//c
ls1=ls[::-1]
d=''.join(ls1)
print(d)

发表于 2019-03-21 20:30:17 回复(0)
list1,list2 = [],[]
output = ""
[A,B,D] = [int(i) for i in input().split()]
sumd = A + B
while True:
    list1.append(sumd % D)
    sumd = int(sumd / D)
    if sumd < 1:
        break
list1.reverse()
for i in list1:
    output = output + str(i)
print(output)

发表于 2019-03-08 09:15:29 回复(0)
a,b,d=map(int,raw_input().split())
c=a+b
i=0
while c>=d**i:
    i+=1
i-=1
bits=[]
while i>=0:
    bits.append(str(c/d**i))
    c%=d**i
    i-=1
print ''.join(bits)

发表于 2018-01-05 16:53:04 回复(0)

python 4行解法:

def baseN(num, b):
    return ((num == 0) and "0") or (baseN(num // b, b).lstrip("0") + "0123456789abcdefghijklmnopqrstuvwxyz"[num % b])

a,b,c=map(int,input().split())
print(baseN(a+b,c))
发表于 2017-10-09 11:09:08 回复(0)
 import sys
def dec2base(num, base):
    if num == 0:
        return
    dec2base(num/base, base)
    remain = num % base
    sys.stdout.write(str(remain))
try:
    while True:
        t = [int(i) for i in raw_input().split()]
        result = t[0] + t[1]
        dec2base(result, t[2])
except EOFError:
    pass 
人生苦短,我用Python
发表于 2016-11-03 16:23:48 回复(0)
import sys
def dec2base(num, base):
    if num == 0:
        return
    dec2base(num/base, base)
    remain = num % base
    sys.stdout.write(str(remain))
try:
    while True:
        t = [int(i) for i in raw_input().split()]
        result = t[0] + t[1]
        dec2base(result, t[2])
except EOFError:
    pass
人生苦短,我用Python
发表于 2016-11-03 00:03:25 回复(0)