python3 算法题:七进制加法

2023-05-16

题目:要求键盘输入两个七进制【0-6】数,以空格分开,计算两者之和输出,例如:
输入:16 1
输出:20

思路:这个题目跟十进制加法一样,不同的就是十进制是逢十进一,七进制是逢七进一。从个位开始加,判断跟7的关系,如果大于七就向前进一,当前位写成个位和与7之差,依次按位加即可。

代码如下:

if __name__ == '__main__':
    m, n = map(str, input().strip().split(" "))
    m_list, n_list = list(m), list(n) # 存成字符数组,方便按位加
    m_list.reverse() # 翻转,方便从个位开始加
    n_list.reverse()

	# 加数和被加数补齐,防止数组越界,短者高位补0
    if len(m_list) > len(n_list):
        result = [''] * (len(m_list) + 1) # 保存和,多一位是防止最高位也有进一的情况
        n_list = n_list + [0] * (len(m_list) - len(n_list))
    else:
        result = [''] * (len(n_lis t) + 1)
        m_list = m_list + [0] * (len(n_list) - len(m_list))

    flag = False
    for i in range(max(len(m_list), len(n_list))):
        if flag: # 如果上一位有进1,本位和需要加上上一位进的1
            plus = int(n_list[i]) + int(m_list[i]) + 1
        else:
            plus = int(n_list[i]) + int(m_list[i])

        if plus >= 7: # 本位大于7,本位存本位和-7,并向前进一
            result[i] = str(plus - 7)
            flag = True
        else:
            result[i] = str(plus)
            flag = False
    if flag: # 最高位最终向前进1,和也需要向前进1
        result[-1] = str(1)
    result.reverse()
    print(''.join(result).strip())
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python3 算法题:七进制加法 的相关文章

  • lsyncd-实时同步(镜像)守护程序

    E mail 1226032602 64 qq com 官方文档 https axkibe github io lsyncd https github com axkibe lsyncd 简介 Lsyncd使用文件系统事件接口 xff08
  • Dockerfile

    docker安装 yum span class token function install span y yum utils device mapper persistent data lvm2 span class token func
  • c51单片机学习笔记-LED闪烁编程

    目的 xff1a 使LED灯闪烁 xff0c 需循环让 D1 指示灯先亮一会后熄灭 xff0c 因此只需编写一个循环函数 xff0c 专门在那循环运行即可实现延时功能 编译软件 xff1a keil5 过程 1 书写延时函数 函数名 xff
  • 网络管理命令-nmcli

    网络管理工具 iproute 软件包包括 ip ss 命令 net tools软件包包括 ifconfig route netstat命令 ip 命令相当于之前的 ifconfig route ss 命令相当于之前的 netstat nmt
  • nginx

    本文作者 五行哥 QQ 1226032602 E mail 1226032602 64 qq com web服务器种类 apache nginx tomcat resin Lighttpd IIS WebLogic Jetty Node j
  • kubernetes ingress

    https kubernetes io docs concepts services networking ingress 负载均衡软件 NginxTraefikEnvoy https github com kubernetes ingre
  • kubernetes configMap secret

    配置容器化应用的方式 自定义命令行参数把配置文件直接焙进镜像环境变量 cloud native的应用程序一般可直接通过环境变量加载配置通过entrypoint脚本来预处理变量 存储卷 configMap 配置中心 pod从configMap
  • 运维精华面试题

    一 基本概念 1 常见的Linux发行版本都有什么 xff1f 你最擅长哪一个 xff1f 它的官网网站是什么 xff1f 说明你擅长哪一块 xff1f 常见的Linux发行版本有Redhat Centos Debian Ubuntu Su
  • K8S集群监控 Prometheus

    Prometheus xff08 普罗米修斯 xff09 是一个最初在SoundCloud上构建的监控系统 xff0c 自2012年成为社区开源项目 xff0c 拥有非常活跃的开发人员和用户社区 xff0c 为强调开源及独立维护 xff0c
  • kvm虚拟化

    https access redhat com documentation zh cn red hat enterprise linux 7 html virtualization getting started guide index h
  • git_gitlab

    本文作者 xff1a wuXing QQ 1226032602 E mail 1226032602 64 qq com git https git scm com book zh v2 Git诞生历史 我想大家还记得Linus torval
  • Jenkins-slave

    Jenkins插件 chinese Role based Authorization Strategy 用户权限 Credentials Binding 凭证管理 span class token function git span Dep
  • kubeadm-config说明

    https www cnblogs com breezey p 11770780 html 配置kubeadm config yaml 通过如下指令创建默认的kubeadm config yaml文件 xff1a kubeadm confi
  • c51单片机学习笔记-LED流水灯实验

    目的 xff1a 实现 LED 流水灯 xff0c 只需循环让 D1 D8 指示灯逐个点亮 方法 xff1a 点亮 D1 且把 D2 D8 熄灭 xff0c 延时一段时间后再点亮 D2 且把 D1 D3 D8 熄灭 xff0c 延时一段时间
  • 获得屏幕大小

    API 要取得屏幕大小 xff0c 可以用下面几个函数 xff1a int cx 61 GetSystemMetrics SM CXFULLSCREEN int cy 61 GetSystemMetrics SM CYFULLSCREEN
  • openstack

    云计算架构 openstack整体架构 openstack身份服务 Keystone 管理层次结构 Keystone三大组件 服务 xff08 Server xff09 身份 xff08 Identity xff09 服务 资源 xff08
  • streamlit

    安装streamlit模块 python3 V Python span class token number 3 6 span 8 pip3 span class token function install span upgrade pi
  • docker命令补全

    参考 https blog csdn net weixin 45444133 article details 116950552 系统补全 span class token comment centos span yum y span cl
  • docker监控-Weave-Scope

    Weave Scope服务是一个用来监控docker容器 k8s等 xff08 包括宿主机 xff09 的资源使用状况的 安装 方法1 span class token function wget span https github com
  • 结构化思维读书整理笔记

随机推荐

  • js编写学生系统---增删改查

    所有代码需要在consolg中查看 lt DOCTYPE html gt lt html gt lt head gt lt meta charset 61 34 UTF 8 34 gt lt title gt 学生管理系统 lt title
  • mac安装homebrew被墙超时

    一 获取 install 文件 xff0c 把官网给的脚本拿下来 curl fsSL https raw githubusercontent com Homebrew install master install gt gt brew in
  • 块元素、行内元素、行内块元素区别及其作用

    块元素 块级元素独占一行 默认会新起一行 xff0c 如 xff1a div p h1 根据这个特性可以实现盒子水平居中margin 0 auto 原理 块级元素独占一行设置大小后水平方向会剩余空间 设置auto左右会自动分配剩余空间 行内
  • Ubuntu安装Docker 时遇到的一个问题

    Ubuntu安装Docker 详细步骤和结果展示 https docs docker com engine install ubuntu 问题描述 xff1a ubuntu 的包管理是通过 apt get 来做的 xff0c 但是默认的 a
  • win10 能Ping通却无法访问虚拟机Ubuntu 14.04 samba的问题(已解决)

    windows系统版本 xff1a Win10 虚拟机版本 xff1a VMware Workstation 12 Pro Ubuntu版本 xff1a 14 04 在更新windows10补丁之前 xff0c Win10是能访问Ubunt
  • c51单片机学习笔记-LED流水灯库函数实验

    目的 xff1a 实现 LED 流水灯 xff0c 只需循环让 D1 D8 指示灯逐个点亮再从D8 D1逐个点亮 xff0c 循环下去 方法 xff1a 利用移位库函数 xff0c 点亮 D1 且把 D2 D8 熄灭 xff0c 延时一段时
  • 关于STM32F405单片机控制雷达模块lidar_lite_v3程序及说明

    include 34 stm32f4 iic h 34 include 34 lidar lite v3 h 34 include 34 stm32f4 delay h 34 uint8 t WriteBuffer 61 0x55 Read
  • 常用串口调试工具比较(详细)

    目前有许多免费的串口调试工具 xff0c 比较常用的有 xff1a 1 友善串口调试助手 xff08 v2 6 5 xff09 优点 xff1a 1 xff09 使用方便 xff0c 不丢包 xff1b 2 xff09 串口自动识别 xff
  • FreeRTOS 变量名,函数名,宏的命名规则(2)

    前言 内容均来自野火相关书籍 xff0c 写博客是为了方便查看 xff1b 博客内容并不完善 xff0c 慢慢补充 xff1b 函数名 xff1a 包含函数返回值的类型 函数所在的文件名和函数的功能 例 xff1a vTaskPriorit
  • 头文件包含顺序的建议

    使用标准的头文件包含顺序可增强可读性 避免隐藏依赖 xff0c 建议的包含顺序如下 xff1a C或C 43 43 等源文件中按照以下顺序包含 xff0c 建议按照稳定度排序 xff1a c cpp对应的头文件 C C 43 43 标准库的
  • [问题解决方案] ubuntu 14.04 分辨率调整 -- xrandr命令

    问题描述 xff1a 自己在安装ubuntu kylin 14 04 TLS系统成功后 xff0c 在调整分辨率的时候 xff08 系统设置 显示 xff09 发现分辨率的选项只有1024x768以及800x600两个选项 xff0c 而台
  • 1、烧录系统到sd卡,从sd卡启动系统

    烧写系统到sd卡 硬件 xff1a 用的是友善之臂的NanoPC T4工业级开发板 步骤 xff1a 1 准备好一个sd卡 xff08 class10以上高速SDHC卡 xff09 和一个读卡器 大小最好16g以上 xff0c 保证空间充裕
  • 12、Gazebo的安装问题

    一 Gazebo的安装问题 1 安装的官网的网址 xff1a http gazebosim org tutorials cat 61 install amp tut 61 install ubuntu amp ver 61 9 0 2 安装
  • 11、ros依赖包安装问题

    一 问题 在ROS编译过程中经常会遇到找不到ROS包的情况 xff0c 那么一般情况下该如何解决问题呢 xff1f 我们通常用apt来进行安装 xff0c 实际上有时候apt在处理依赖关系上是没有aptitude那么智能的 xff0c 所以
  • 12、TX2(ARM架构)平台换源

    关于换源的教程可参考一下其他博主的两篇文章 ARM架构换源 Ubuntu 国内源介绍 针对本机的换源操作如下 xff1a 进入配置目录 span class token function cd span etc apt 备份sources
  • VirtualBox 每天自动创建快照

    需求很简单 每天自动对虚拟机创建一个快照 避免忘记备份 同时给自己减少一点工作量 主要思路就是通过VBoxManage的命令行操作和windows的任务计划程序来完成定时备份的工作 VBoxManage 使用帮助如下 C Program F
  • c51单片机学习笔记-动态数码管实验(un)

    目的 xff1a 控制动态数码管从左至右显示数字 0 7 编译软件 xff1a keil5 过程 1 xff09 首先将 51 单片机的头文件包含进来 xff0c 然后定义 38 译码器的控制引脚 xff0c 并将共阴数码管 0 F 断码数
  • 在py-faster-rcnn/lib里make时报错: unrecognized command line option ‘-Wdate-time’

    在py faster rcnn lib里make时报错 xff1a c 43 43 pthread shared Wl O1 Wl Bsymbolic functions Wl Bsymbolic functions Wl z relro
  • C/C++ 日常学习总结(第十九篇)多线程详解

    这些讲解多线程文章都是非常好的 xff0c 我这边就归结出一个 lt 多线程详解 gt 出来 xff0c 感谢各位原创作者的辛苦劳动 xff0c 这些收藏起来方便自己消化 1 多线程笔试面试题汇总 解答地址 xff1a 概念问答 2 深入分
  • python3 算法题:七进制加法

    题目 xff1a 要求键盘输入两个七进制 0 6 数 xff0c 以空格分开 xff0c 计算两者之和输出 xff0c 例如 xff1a 输入 xff1a 16 1 输出 xff1a 20 思路 xff1a 这个题目跟十进制加法一样 xff