python-FILIP/字符串p形编码/数字三角形

一:FILIP
题目描述

给你两个十进制正整数 a,b​,输出将这两个数翻转后的较大数。
「翻转」在本题中的定义详见「说明 / 提示」部分。
输入
第一行,两个十进制正整数 a,b。
输出
第一行,a 和 b 翻转后的较大数。
样例输入1
734 893

样例输出1
437

样例输入2
221 231

样例输出2
132

样例输入3
839 237

样例输出3
938

提示
「翻转」在本题中的定义
设原数有 f 位,最高位为 a1​,第二位为 a2​,……,第 f 位为 af​。
那么该数的翻转同样有 f 位,最高位为为 af​,第二位为 af−1​,……,第 f 位为 a1​。
数据规模及约定                                                      对于 100% 的数据,100≤a,b≤999,a,b 不含 0 或不为 0。
来源/分类(难度系数:一星)
数学思维


完整代码展示:
a,b=map(str,input().split())
c=list(a)
c.reverse()
d=list(b)
d.reverse()
sum_1=""
sum_2=""
for i in range(0,len(c)):
      sum_1+=c[i]
      sum_2+=d[i]
if sum_1>=sum_2:
     print(sum_1)
else:
       print(sum_2)

a,b=map(str,input().split())
c=list(a)
c.reverse()
d=list(b)
d.reverse()
sum_1=""
sum_2=""
for i in range(0,len(c)):sum_1+=c[i]sum_2+=d[i]
if sum_1>=sum_2:print(sum_1)
else:print(sum_2)


代码解释:
“a,b=map(str,input().split()) ”,导入用户输入的两个十进制整数a,b并将其转换为字符串。
“c=list(a)
 c.reverse()
 d=list(b)
 d.reverse() ”,分别将a,b储存在列表c,d中,再将c,d反转。
“sum_1=""
 sum_2=""
 for i in range(0,len(c)):
       sum_1+=c[i]
       sum_2+=d[i]          ”,建立两个空字符串sum_1,sum_2,依次遍历c,d中元素,sum_1,sum_2分别连接c,d中元素。
“if sum_1>=sum_2:
       print(sum_1)
 else:
        print(sum_2)  ”,判断sum_1是否大于等于sum_2:如果是,则打印sum_1;否则打印sum_2。


运行效果展示:

0c578cc60ece46378c1df327541c40fd.jpg

68e671b617e54c5f92d240debc934c3f.jpg 

 

 

 

 

二:字符串p形编码
题目描述

给定一个完全由数字字符('0','1','2',…,'9')构成的字符串 str ,请写出 str 的 p 型编码串。例如:字符串 122344111 可被描述为 1个1、2个2、1个3、2个4、3个1 ,因此我们说122344111 的 p 型编码串为 1122132431 ;类似的道理,编码串 101 可以用来描述 1111111111 ;00000000000 可描述为 11个0,因此它的p型编码串即为 110 ;100200300 可描述为 1个1、2个 0、1个2、2个0、1个3、2个0,因此它的 p 型编码串为 112012201320。
输入
输入仅一行,包含字符串 str。每一行字符串最多包含 1000 个数字字符。
输出
输出该字符串对应的 pp 型编码串。
样例输入1
122344111

样例输出1
1122132431

来源/分类(难度系数:一星)
每日一题 循环结构


完整代码展示:
a=list(input())
sum1=""
b=1
c=[a[0]]
while b<len(a):
       if a[b]==c[-1]:
            c.append(a[b])
       else:
              sum2=str(len(c))+c[-1]
              sum1+=sum2
              c=[a[b]]
       b+=1
sum1+=str(len(c))+c[-1]
print(sum1)

a=list(input())
sum1=""
b=1
c=[a[0]]
while b<len(a):if a[b]==c[-1]:c.append(a[b])else:sum2=str(len(c))+c[-1]sum1+=sum2c=[a[b]]b+=1
sum1+=str(len(c))+c[-1]
print(sum1)


代码解释:
“a=list(input()) ”,导入用户输入的字符串并将其储存在列表a中。
“sum1=""
 b=1
 c=[a[0]]
 while b<len(a):
        if a[b]==c[-1]:
             c.append(a[b])
        else:
               sum2=str(len(c))+c[-1]
               sum1+=sum2
               c=[a[b]]
        b+=1                                    ”,建立一个空字符串sum1,用于连接字符串的p型编码。令b为循环密码子,初始值为1。建立一个列表c,储存列表a的第一个元素。当b<len(a)时:判断a[b]与列表c的末尾元素是否相同:如果相同,则将该元素添加进c中;否则将列表c的长度转换为字符型后与c中最后一个元素连接起来为sum2。再将sum2用sum1连接起来,将储存a[b]的列表赋给c。每循环一次,b+1,直至b==len(a),跳出整个while循环。
“sum1+=str(len(c))+c[-1] ”,将最后一次得到的列表c的长度转换为字符型后与c中最后一个元素连接起来,最后再将其用sum1连接。
“print(sum1) ”,打印sum1的最终结果。


运行效果展示:

079332a947ac44bb86cc33a9fb7b0d3a.jpg

ad3d864d94044cb6ad35499895f61e00.jpg 

 

 

 

 

三:数字三角形
题目描述

打印数字三角形,从 1 开始输出,第 i 行输出 i 个数,每个数字按 4 个位置输出。
输入格式
输入一行,包含一个整数 n。
输出格式
输出共 n 行。
第 i 行包括 i 个数,每个数占据四个位置。
样例输入输出
样例输入

4
样例输出
   1
   2   3
   4   5   6
   7   8   9  10
数据范围
对于 100% 的数据,保证 1≤n≤1000 。
提示说明
c 语言中%4d可以输出一个数,占据四个位置,右对齐。
来源/分类(难度系数:一星)
基本输入输出 循环结构


完整代码展示:
a=int(input())
d=[]
for i in range(1,int(a*(a+1)/2)+1):
      d.append(i)
space=' '
c=1
while c<a+1:
       sum=''
       for i in range(c):
             if len(str(d[i]))==1:
                 sum+=space*3+str(d[i])
             elif len(str(d[i]))==2:
                 sum+=space*2+str(d[i])
             elif len(str(d[i]))==3:
                 sum+=space*1+str(d[i])
             else:
                    sum+=str(d[i])                                               print(sum)
       for j in range(c):
             d.append(d[0])
             del d[0]
       c+=1

a=int(input())
d=[]
for i in range(1,int(a*(a+1)/2)+1):d.append(i)
space=' '
c=1
while c<a+1:sum=''for i in range(c):if len(str(d[i]))==1:sum+=space*3+str(d[i])elif len(str(d[i]))==2:sum+=space*2+str(d[i])elif len(str(d[i]))==3:sum+=space*1+str(d[i])else:sum+=str(d[i])print(sum)for j in range(c):d.append(d[0])del d[0]c+=1


代码解释:
“a=int(input()) ”,导入用户输入的三角形的高度a。
“d=[]
 for i in range(1,int(a*(a+1)/2)+1):
       d.append(i)                               ”,建立一个空列表d,接着遍历1~a*(a+1)/2的数字i,并将i添加进d中。
“space=' '
 c=1
 while c<a+1:
        sum=''
        for i in range(c):
              if len(str(d[i]))==1:
                  sum+=space*3+str(d[i])
              elif len(str(d[i]))==2:
                  sum+=space*2+str(d[i])
              elif len(str(d[i]))==3:
                  sum+=space*1+str(d[i])
              else:
                     sum+=str(d[i])
        print(sum)
        for j in range(c):
              d.append(d[0])
              del d[0]
        c+=1                                        ”,space代表一个空格。令c为循环密码子,当c<a+1时:建立一个空字符串sum,接着遍历0~c-1的数字,判断d[i]转换为字符串后的长度,如果为1:sum+space*3+str(d[i])......最后打印sum的最终结果。接着循环c次:将d[0]添加进d的末尾,并将d[0]从d中删除。每循环一次,c+1,直至c==a+1时,跳出整个while循环。


运行效果展示:

5789db69344b405f82cc65b60106df59.jpg

2355bb49ddf14bb593bf15b06b9c5fe7.jpg(声明:以上内容均为原创) 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/438897.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Microsoft Edge 五个好用的插件

&#x1f423;个人主页 可惜已不在 &#x1f424;这篇在这个专栏 插件_可惜已不在的博客-CSDN博客 &#x1f425;有用的话就留下一个三连吧&#x1f63c; 目录 Microsoft Edge 一.安装游览器 ​编辑 二.找到插件商店 1.打开游览器后&#xff0c;点击右上角的设置&#…

【深度学习基础模型】深度残差网络(Deep Residual Networks, DRN)详细理解并附实现代码。

【深度学习基础模型】深度残差网络&#xff08;Deep Residual Networks, DRN&#xff09;详细理解并附实现代码。 【深度学习基础模型】深度残差网络&#xff08;Deep Residual Networks, DRN&#xff09;详细理解并附实现代码。 文章目录 【深度学习基础模型】深度残差网络&a…

Python小示例——质地不均匀的硬币概率统计

在概率论和统计学中&#xff0c;随机事件的行为可以通过大量实验来研究。在日常生活中&#xff0c;我们经常用硬币进行抽样&#xff0c;比如抛硬币来决定某个结果。然而&#xff0c;当我们处理的是“质地不均匀”的硬币时&#xff0c;事情就变得复杂了。质地不均匀的硬币意味着…

Spring Boot中线程池使用

说明&#xff1a;在一些场景&#xff0c;如导入数据&#xff0c;批量插入数据库&#xff0c;使用常规方法&#xff0c;需要等待较长时间&#xff0c;而使用线程池可以提高效率。本文介绍如何在Spring Boot中使用线程池来批量插入数据。 搭建环境 首先&#xff0c;创建一个Spr…

每日学习一个数据结构-树

文章目录 树的相关概念一、树的定义二、树的基本术语三、树的分类四、特殊类型的树五、树的遍历六、树的应用场景 树的遍历一、前序遍历二、中序遍历三、后序遍历使用java代码实现遍历总结 树的相关概念 树是一种重要的非线性数据结构&#xff0c;在计算机科学中有着广泛的应用…

24-10-4-读书笔记(二十四)-《一个孤独漫步者的遐想》下([法] 让·雅克·卢梭 [译]陈阳)

文章目录 《一个孤独漫步者的遐想》下&#xff08;[法] 让雅克卢梭 [译]陈阳&#xff09;目录阅读笔记记录总结 《一个孤独漫步者的遐想》下&#xff08;[法] 让雅克卢梭 [译]陈阳&#xff09; 十月第四篇&#xff0c;这次应该能拿到流量券吧&#xff01;《一个孤独漫步者的遐想…

A Learning-Based Approach to Static Program Slicing —— 论文笔记

A Learning-Based Approach to Static Program Slicing OOPLSA’2024 文章目录 A Learning-Based Approach to Static Program Slicing1. Abstract2. Motivation(1) 为什么需要能处理不完整代码(2) 现有方法局限性(3) 验证局限性: 初步实验研究实验设计何为不完整代码实验结果…

C#串口温度读取

背景&#xff1a;每天学点&#xff0c;坚持 要安装好虚拟串口和modbus poll&#xff0c;方便调试&#xff08;相关资源在文末&#xff0c;也可以私信找我要&#xff09; 传感器部分使用的是达林科技的DL11B-MC-D1&#xff0c;当时42软妹币买的&#xff08;官网上面有这个传感…

网络编程(12)——完善粘包处理操作(id字段)

十二、day12 之前的粘包处理是基于消息头包含的消息体长度进行对应的切包操作&#xff0c;但并不完整。一般来说&#xff0c;消息头仅包含数据域的长度&#xff0c;但是如果要进行逻辑处理&#xff0c;就需要传递一个id字段表示要处理的消息id&#xff0c;当然可以不在包头传i…

Linux网络编程

文章目录 参考资料在前1. 前置知识2. 进程概述2.1 fork()函数2.2 守护进程 3. 浅谈printf()函数与write()函数3.1 printf()函数缓存问题3.2 write()函数思考 4. 网络编程剖析4.1 listen()监听套接字4.2 阻塞/非阻塞IO4.3 同步/异步IO4.4 TCP/IP设计4.4.1 三次握手4.4.2 四次挥手…

机器人的性能指标

1. 负荷能力 负荷能力负荷能力是指机器人在满足其他性能要求的情况下,能够承载的负荷重量。例如,一台机器人的最大负荷能力可能远大于它的额定负荷能力,但是达到最大负荷时,机器人的工作精度可能会降低,可能无法准确地沿着预定的轨迹运动,或者产生额外的偏差。机器人的负荷量与…

【重学 MySQL】四十一、子查询举例与分类

【重学 MySQL】四十一、子查询举例与分类 引入子查询在SELECT子句中引入子查询在FROM子句中引入子查询在WHERE子句中引入子查询注意事项 子查询分类标量子查询列子查询行子查询表子查询 子查询注意事项子查询的位置子查询的返回类型别名的使用性能考虑相关性错误处理逻辑清晰 总…

Flet介绍:平替PyQt的好用跨平台Python UI框架

随着Python在各个领域的广泛应用&#xff0c;特别是在数据科学和Web开发领域&#xff0c;对于一个简单易用且功能强大的用户界面&#xff08;UI&#xff09;开发工具的需求日益增长。传统的Python GUI库如Tkinter、PyQt虽然功能强大&#xff0c;但在易用性和现代感方面略显不足…

数据结构--二叉树的顺序实现(堆实现)

引言 在计算机科学中&#xff0c;二叉树是一种重要的数据结构&#xff0c;广泛应用于各种算法和程序设计中。本文将探讨二叉树的顺序实现&#xff0c;特别是堆的实现方式。 一、树 1.1树的概念与结构 树是⼀种⾮线性的数据结构&#xff0c;它是由 n(n>0) 个有限结点组成…

【HTML5】html5开篇基础(5)

1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; Hello, Hello~ 亲爱的朋友们&#x1f44b;&#x1f44b;&#xff0c;这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章&#xff0c;请别吝啬你的点赞❤️❤️和收藏&#x1f4d6;&#x1f4d6;。如果你对我的…

vue-live2d看板娘集成方案设计使用教程

文章目录 前言v1.1.x版本&#xff1a;vue集成看板娘&#xff08;暂不使用&#xff0c;在v1.2.x已替换&#xff09;集成看板娘实现看板娘拖拽效果方案资源备份存储 当前最新调研&#xff1a;2024.10.2开源方案1&#xff1a;OhMyLive2D&#xff08;推荐&#xff09;开源方案2&…

【设计模式】软件设计原则——接口隔离迪米特

接口隔离原则引出 接口隔离原则 定义&#xff1a;用多个专门的接口,不使用单一的总接口,客户端不应该依赖它不需要的接口; 一个类对另一个类的依赖,应该建立在最小接口上;如果有一个大接口,里面有很多方法,如果使用一个类实现该接口,所有的类都要实现&#xff0c;导致代码冗余;…

android 全面屏最底部栏沉浸式

Activity的onCreate方法中添加 this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); Android 系统 Bar 沉浸式完美兼容方案自 Android 5.0 版本&#xff0c;Android 带来了沉浸式系统 ba - 掘金 (juejin.cn)https://juejin.cn/post/7075578…

【HTTP(3)】(状态码,https)

【认识状态码】 状态码最重要的目的&#xff0c;就是反馈给浏览器:这次请求是否成功&#xff0c;若失败&#xff0c;则出现失败原因 常见状态码: 200:OK&#xff0c;表示成功 404:Not Found&#xff0c;浏览器访问的资源在服务器上没有找到 403:Forbidden&#xff0c;访问被…

【每天学个新注解】Day 15 Lombok注解简解(十四)—@UtilityClass、@Helper

UtilityClass 生成工具类的注解 将一个类通过注解变成一个工具类&#xff0c;并没有什么用&#xff0c;本来代码中的工具类数量就极为有限&#xff0c;并不能达到减少重复代码的目的 1、如何使用 加在需要委托将其变为工具类的普通类上。 2、代码示例 例&#xff1a; Uti…