鱼C论坛

 找回密码
 立即注册
楼主: zltzlt

Python:每日一题 339

[复制链接]
发表于 2020-2-29 23:31:43 | 显示全部楼层
nl2020 发表于 2020-2-29 22:46
a=input('a=')
b=input('b=')
if len(a)>len(b):

点<>这个符号上传代码,在表情符合左边,手机有电脑模式下操作
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-29 23:36:17 | 显示全部楼层
秒秒钟出答案。
  1. def solve(a,b):
  2.     la,lb = len(a),len(b)
  3.     if la > lb:b = '0'*(la-lb)+b
  4.     else:a = '0'*(lb-la)+a
  5.     return ''.join([str(int(a[i])+int(b[i])) for i in range(max(la,lb)-1,-1,-1)][::-1])
  6. if __name__ == '__main__':
  7.     print('示例1 输出:',repr(solve('99','111')))
  8.     print('示例2 输出:',repr(solve('2','321')))
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 00:25:41 | 显示全部楼层
本帖最后由 Python3005 于 2020-3-1 00:33 编辑
  1. def fun(s, t):
  2.         result = ''
  3.         if len(s) != len(t):
  4.                 s, t = s if len(s) > len(t) else t, s if len(s) < len(t) else t
  5.                 t = '0' * (len(s)- len(t)) + t
  6.         for each in range(len(s)):
  7.                 result += str(int(s[each]) + int(t[each]))
  8.         return result
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 02:33:57 | 显示全部楼层
  1. def f339(a,b):
  2.     m=max(len(a),len(b))
  3.     a1,b1=a.zfill(m),b.zfill(m)
  4.     return ''.join([str(int(a1[i])+int(b1[i])) for i in range(m)])
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 08:26:24 | 显示全部楼层
kinkon 发表于 2020-2-29 23:31
点这个符号上传代码,在表情符合左边,手机有电脑模式下操作

OK
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 09:46:44 | 显示全部楼层
本帖最后由 yexing 于 2020-3-1 10:04 编辑
  1. def func339(a, b):
  2.     bigger = a if (len(a) >= len(b)) else b
  3.     smaller = a if (bigger == b) else b
  4.     smaller = smaller.zfill(len(bigger))
  5.     s = ""
  6.     for i in range(0, len(bigger)):
  7.         s = s + str(int(bigger[i]) + int(smaller[i]))
  8.     return s
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 12:08:32 | 显示全部楼层
本帖最后由 一个账号 于 2020-3-1 12:18 编辑



应该不会超时:

  1. def func(a, b):
  2.     a, b = list(a), list(b)
  3.     n1, n2 = len(a), len(b)
  4.     result = ""
  5.     while n1 != n2:
  6.         if n1 < n2:
  7.             a.insert(0, 0)
  8.         else:
  9.             b.insert(0, 0)   
  10.         n1, n2 = len(a), len(b)
  11.     for i in range(n1):
  12.         result += str(int(a[i])+int(b[i]))
  13.     return result
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 13:34:52 | 显示全部楼层
进行优化:
  1. a = input('a = ')
  2. b = input('b = ')
  3. c = ''
  4. if len(a) > len(b):
  5.     for i in range(len(a) - len(b)):
  6.         b = '0' + b
  7. else:
  8.     for i in range(len(b) - len(a)):
  9.         a = '0' + a
  10. for i in range(len(a)):
  11.     c += str(int(a[i]) + int(b[i]))
  12. print(c)
复制代码

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
zltzlt + 1 + 1

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 14:40:58 | 显示全部楼层
a=input('输入一段数字:')
b=input('输入另一段数字:')
while a.isdigit==0:
    a=input('重新输入一段数字:')
while b.isdigit==0:
    b=input('重新输入一段数字:')
def fun1(a,b):
    e=''
    while a//10!=0 or b//10!=0:
        c=a%10
        print(c)
        a=a//10
        d=b%10
        print(d)
        b=b//10
        print(b)
        e=str(c+d)+e
    e=str(a+b)+e
    return e
c=int(a)
d=int(b)
print(fun1(c,d))

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
zltzlt + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 14:44:28 | 显示全部楼层
  1. def result(a,b):
  2.     r = []
  3.     len_a , len_b = len(a)-1 ,len(b)-1
  4.     while len_a >= 0 or len_b>= 0:
  5.         if len_a<0:
  6.             r.append((int)(b[len_b]))
  7.         elif len_b<0:
  8.             r.append((int)(a[len_a]))
  9.         else:
  10.             r.append((int)(a[len_a]) + (int)(b[len_b]))
  11.         len_a -= 1
  12.         len_b -= 1
  13.     while r:
  14.         print(r.pop(),end = '')
  15. a = input('a = ')
  16. b = input('b = ')
  17. result(a,b)
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
zltzlt + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 14:44:40 | 显示全部楼层
允与慎为 发表于 2020-3-1 14:40
a=input('输入一段数字:')
b=input('输入另一段数字:')
while a.isdigit==0:

输入0也没关系呀,结果就是0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 14:45:12 | 显示全部楼层

第一次发代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 17:54:34 | 显示全部楼层
本帖最后由 星小天 于 2020-3-1 22:24 编辑
  1. def fun(a,b):
  2.     if a>b:
  3.         a,b = b,a
  4.     res=""
  5.     while a:
  6.         res=res+str( b%10 + a%10)
  7.         a=a//10
  8.         b=b//10
  9.     res = str(b)+res
  10.     print(res)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-1 18:39:46 | 显示全部楼层
  1. while True:
  2.         
  3.     a = input("请输入a:")
  4.     b = input("请输入b:")

  5.     sub_num = abs(len(a)-len(b))
  6.     cons_num = ""

  7.     if sub_num>0:
  8.         if len(a)>len(b):
  9.             for i in range(sub_num):
  10.                 b = "0" +b
  11.         else:
  12.             for i in range(sub_num):
  13.                 a = "0" +a

  14.     for i in range(len(a)):
  15.         ab = str(int(a[i]) + int(b[i]))
  16.         cons_num = cons_num + ab

  17.     print(cons_num)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:23:39 | 显示全部楼层
kinkon 发表于 2020-2-29 21:55
这次应该对了吧

25 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:24:56 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:28:49 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:28:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:29:28 | 显示全部楼层

39 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-1 19:30:09 | 显示全部楼层

30 ms
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-28 15:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表