PAT中文1006-1010(依然是python)

好吧,依然是为了练习我的python,因为个人觉得除了做题之外,找不到更好地方式去练习一门语言了,做项目又比较困难啥的,废话不多说,

 除了最后一题之外别的都没啥坑,因此我就不多解释了,代码奉上

1006:

import string
n = raw_input()
size = len(n)
o = ""
for i in n:
	t = string.atoi(i,10)
	if size == 3:
		o += t*'B'
		size -= 1
	elif size == 2:
		o += t*'S'
		size -= 1
	elif size == 1:
		for j in range(t):
			j += 1
			o += str(j)
		size -= 1
print o


1007:

n = input()
nums = (n+1)*[True]
for i in range(2,n+1):
	j = i
	if nums[j]:
		j += i
		while j < n+1:
			nums[j] = False
			j += i
s = 0
for i in range(2,n-1):
	if nums[i] and nums[i+2]:
		s += 1
print s

 

1008:

n,m = map(int,raw_input().split())
nums = map(int,raw_input().split())
m %= n
t = n - m
for i in range(m):
	print nums[t+i],
for i in range(t-1):
	print nums[i],
print nums[t-1]


 

1009:

strs = map(str,raw_input().split())
strs = strs[::-1]
for i in strs:
	print i,


 

1010:最后一题的坑主要就是如果输入是 x 0那么输出按照道理来说就是为空,但是实际上需要输出0 0,你会问我为什么这样,我只能说,出题人就是这么规定的,这事情我也是看了校内的论坛上我们老师回的贴,不然我可能半天也不可能会想到。

nums = map(int,raw_input().split())
s = (len(nums))/2
isV = False
for i in range(s):
	if nums[i*2+1] != 0:
		print nums[i*2]*nums[i*2+1],nums[i*2+1]-1,
		isV = True
if not isV:
	print 0,0


 

本文到此结束,我的第二篇博客,顺手再贴再贴一张我的壁纸,多多捧场!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值