一篇辣鸡python写题目感想之——PTA自测-1 打印沙漏
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印
*****
***
*
***
*****
所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。
给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。
输入格式:
输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。
输出格式:
首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。
输入样例:
19 *
输出样例:
*****-----------------------------------------------------------我是华丽的分割线--------------------------------------------------------------------------
***
*
***
*****
2
解题思路是什么?
我一看到这个题,诶呀简单。那不就是直接打印?
print(''' *****
***
*
***
***** ''')
完事了?
然后我仔细读题,发现是在下傻了,彻底傻了。
好吧,虽然以前做过打印一个金字塔类似的题目,但是给定个数并且打印沙漏这样的题目其实实现起来会难很多。
不过我还是把大致的思路通过python实现了出来,虽然这个代码其实是运行不了的,但是思路在这里你们看懂就好
(这也是为了防止某些喜欢剽窃的人)
a=int(input())
b=input()
c=1
i=1
kong=0
while i<20:
i+=1
c=c+2*(1+2*i) #多少个打印
if b%c<2*(1+2*(i+1)): #若不大于
d=a-c
break
for n in range(1,2*i-1): #总共有这么多行
if (2*i-1)-kong!=1 #当空格字符数量等于1
for p in range(1,2*(1+2*i)):#总共要打印的是n行
for i2 in range(0,kong):
print(" ") #打印一个空字符
for i1 in range(0,1+2*(i-1)-2*kong):
print("*") #打印一个符号
kong+=1
else
for p in range(1, 2 * (1 + 2 * i)): # 总共要打印的是n行
for i2 in range(0, kong):
print(" ") # 打印一个空字符
for i1 in range(0, 1 + 2 * (i - 1) - 2 * kong):
print("*") # 打印一个符号
kong-=1
print("/")
print(d)
这段代码其实是错的。再次声明
我知道我菜,所以大佬来喷我呀!
我真的很欠打.....好吧
一篇辣鸡python写题目感想之——PTA自测-1 打印沙漏的更多相关文章
- 「懒惰的美德」我用 python 写了个自动生成给文档生成索引的脚本
我用 python 写了一个自动生成索引的脚本 简介:为了刷算法题,建了一个 GitHub仓库:PiperLiu / ACMOI_Journey,记录自己的刷题轨迹,并总结一下方法.心得.想到一个需求 ...
- 用Python写一个简单的Web框架
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...
- 第六篇——初尝Python,意犹未尽
作业2的要求是选一个你从来没有学过的编程语言,试一试实现基本功能.那么在这里我准备学习Python语言进行学习,并尝试用Python写一写东西. http://www.runoob.com/ Pyth ...
- Python之路【第九篇】:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用 ...
- python写xml文件
为了便于后续的读取处理,这里就将信息保存在xml文件中,想到得到的文件如下: 1 <?xml version="1.0" encoding="utf-8" ...
- Python之美[从菜鸟到高手]--一步一步动手给Python写扩展(异常处理和引用计数)
我们将继续一步一步动手给Python写扩展,通过上一篇我们学习了如何写扩展,本篇将介绍一些高级话题,如异常,引用计数问题等.强烈建议先看上一篇,Python之美[从菜鸟到高手]--一步一步动手给Pyt ...
- HDU 2064 菜鸡第一次写博客
果然集训就是学长学姐天天传授水铜的动态规划和搜索,今天讲DP由于困意加上面瘫学长"听不懂就是你不行"的呵呵传授,全程梦游.最后面对连入门都算不上的几道动态规划,我的内心一片宁静,甚 ...
- 教你用python写:HDU刷题神器
声明:本文以学习为目的,请不要影响他人正常判题 HDU刷题神器,早已被前辈们做出来了,不过没有见过用python写的.大一的时候见识了学长写这个,当时还是一脸懵逼,只知道这玩意儿好屌-.时隔一年,决定 ...
- 理解Python中的装饰器//这篇文章将python的装饰器来龙去脉说的很清楚,故转过来存档
转自:http://www.cnblogs.com/rollenholt/archive/2012/05/02/2479833.html 这篇文章将python的装饰器来龙去脉说的很清楚,故转过来存档 ...
- 作业1+2.四则运算(改进后完整版,用python写的)_064121陶源
概述: 用一个星期加上五一的三天假期自学了python,在Mac系统上重新写出了四则运算的程序,编译器是PyCharm,相当于完成了作业2.d)"选一个你从来没有学过的编程语言,试一试实现基 ...
随机推荐
- 最新活动 ISS 国际空间站 MAI-75 SSTV活动计划于2020年8月4日至5日
MAI-75 SSTV活动计划于2020年8月4日和5日举行 8月3日至9日这一周的最后宇航员时间表最近公布了,它显示了定于8月4日和5日进行的MAI-75活动.这是在Space X Demo-2脱 ...
- Shell语言编程(炼气)
1. Shell脚本执行方式 执行方式 应用及场景 通过sh或bash 书写脚本后,最常用的方式,在其他非红帽系统中,建议使用bash运行脚本 通过.点或source 加载/生效配置文件(环境变量,别 ...
- BUUCTF---密码学的心声
题目 打开题目获取一个BMP的格式图片,根据歌词尝试转换成ASCII码 转ASCII码 将曲谱上面转化,发现是8进制从而转为ASCII码 点击查看代码 nums = [111, 114, 157, 1 ...
- BUUCTF---unencode
1.题目 2.知识 UUENCODE是将二进制文件转换为文本文件的过程,转换后的文件可以通过纯文本e-mail进行传输,在接收方对该文件进行uudecode,即将其转换为初始的二进制文件. 3.解题 ...
- 离线版nrfutil工具安装方法
简介 nrfutil是Nordic提供的命令行工具集.支持以下功能: 基于Jlink的固件烧录.读取.flash擦除.recover 基于MCUBOOT的固件升级(DFU) 基于nRF5 bootlo ...
- 扫盲ASM
在进行程序跟踪时,会出现汇编.由于ASM盲,所以添加不少烦恼.有烦恼得想办法解决.对,扫盲ASM. 这里是教材,感觉大白话很好理解(感谢 http://www.ruanyifeng.com/blog/ ...
- datasnap的监督功能【3】-TCP链接监督功能
1.对于使用TCP/IP链接的客户端应用程序,是具有状态的.一直等到客户端完成服务请求后释放配置的资源.如何掉线了,那么服务器就是傻傻地等着,可能导致资源耗尽. 如何在服务端选择一个链接切断关闭之: ...
- 整合阿里OSS进行文件上传
3.整合阿里OSS进行文件上传 1).引入spring-cloud-starter-alicloud-oss包 2).在配置文件中配置Key.endpoint 3).自动注入private OSSCl ...
- Linux防火墙操作指令
firewall-cmd --list-ports # 查看开放的端口号 firewall-cmd --zone=public --add-port=8888/tcp --permanent # 开放 ...
- MySQL 插入一条 SQL 语句,redo log 记录的是什么?
MySQL 插入一条 SQL 语句,redo log 记录的内容 在 MySQL 的 InnoDB 存储引擎中,redo log(重做日志)主要用来保证事务的持久性和崩溃恢复能力.redo log 记 ...