Python 基础练习 PAT水题(一)

简介:

#学习笔记

#用以练习Python基础

#


#原题链接 https://www.patest.cn/contests/pat-b-practise/1046



1046. 划拳(15)

划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。

下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。

输入格式:

输入第一行先给出一个正整数N(<=100),随后N行,每行给出一轮划拳的记录,格式为:

甲喊 甲划 乙喊 乙划

其中“喊”是喊出的数字,“划”是划出的数字,均为不超过100的正整数(两只手一起划)。

输出格式:

在一行中先后输出甲、乙两人喝酒的杯数,其间以一个空格分隔。

输入样例:

5
8 10 9 12
5 10 5 10
3 8 5 12
12 18 1 13
4 16 12 15

输出样例:

1 2


AC代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
n = int ( input ())
x = y = 0
for  in   range (n):
     L = str ( input ())
     L = L.split( ' ' )
     a1 = int (L[ 0 ])
     a2 = int (L[ 1 ])
     b1 = int (L[ 2 ])
     b2 = int (L[ 3 ])
     if (a2 = = a1 + b1  and  a2! = b2):
         x = x + 1
     if (b2 = = a1 + b1  and  a2! = b2):
         y = y + 1
print ( "%d %d"  %  (y,x))



#原题链接:https://www.patest.cn/contests/pat-b-practise/1041


1041. 考试座位号(15)

每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。

输入格式:

输入第一行给出一个正整数N(<=1000),随后N行,每行给出一个考生的信息:“准考证号 试机座位号 考试座位号”。其中准考证号由14位数字组成,座位从1到N编号。输入保证每个人的准考证号都不同,并且任何时候都不会把两个人分配到同一个座位上。

考生信息之后,给出一个正整数M(<=N),随后一行中给出M个待查询的试机座位号码,以空格分隔。

输出格式:

对应每个需要查询的试机座位号码,在一行中输出对应考生的准考证号和考试座位号码,中间用1个空格分隔。

输入样例:

4
10120150912233 2 4
10120150912119 4 1
10120150912126 1 3
10120150912002 3 2
2
3 4

输出样例:

10120150912002 2
10120150912119 1

AC代码

1
2
3
4
5
6
7
8
9
10
11
12
13
n = int ( input ())
#lists = [[] for i in range(n)]
lists = []
for  in  range (n):
     lists.append( str ( input ()).split( ' ' ))
m = int ( input ())
=  str ( input ())
=  x.split( ' ' )
for  in  x:
     for  in  range (n):
         if (lists[j][ 1 ] = = k):
             print (lists[j][ 0 ],lists[j][ 2 ])
             break




原题链接:https://www.patest.cn/contests/pat-b-practise/1044

1044. 火星数字(20)

火星人是以13进制计数的:

  • 地球人的0被火星人称为tret。

  • 地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。

  • 火星人将进位以后的12个高位数字分别称为:tam, hel, maa, huh, tou, kes, hei, elo, syy, lok, mer, jou。

例如地球人的数字“29”翻译成火星文就是“hel mar”;而火星文“elo nov”对应地球数字“115”。为了方便交流,请你编写程序实现地球和火星数字之间的互译。

输入格式:

输入第一行给出一个正整数N(<100),随后N行,每行给出一个[0, 169)区间内的数字 —— 或者是地球文,或者是火星文。

输出格式:

对应输入的每一行,在一行中输出翻译后的另一种语言的数字。

输入样例:

4
29
5
elo nov
tam

输出样例:

hel mar
may
115
13

AC代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
N = int ( input ())
base = [ 'tret' , 'jan' , 'feb' 'mar' 'apr' 'may' 'jun' 'jly' 'aug' 'sep' 'oct' 'nov' 'dec' ]
high = [ 'tam' 'hel' 'maa' 'huh' 'tou' 'kes' 'hei' 'elo' 'syy' 'lok' 'mer' 'jou' ]
def  Mars2Earth(mars):
     S = mars.split( ' ' )
     if  len (S)  = = 2 :
         print ((high.index(S[ 0 ]) + 1 ) * 13 + base.index(S[ 1 ]))
     else :
         try :
             print (base.index(S[ 0 ]))
         except :
             print ((high.index(S[ 0 ]) + 1 ) * 13 )
def  Earth2Mars(earth):
     h = earth / / 13
     if  earth % 13 ! = 0  and  h > 0 :
         print (high[h  -  1 ], end = ' ' )
         print (base[earth % 13 ])
     elif  h> 0  and  earth % 13 = = 0 :
         print (high[h  -  1 ])
     elif  h = = 0 :
         print (base[earth % 13 ])
for  in  range (N):
     L = str ( input ())
     if  L.isdecimal()  = = True :
         Earth2Mars( int (L))
     else :
         Mars2Earth(L)









本文转自 chaunceyjiang  51CTO博客,原文链接:http://blog.51cto.com/cqwujiang/1919672,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
Python
Python:函数篇(每周练习)
Python:函数篇(每周练习)
79 1
|
2月前
|
机器学习/深度学习 人工智能 算法
【Python】编程练习的解密与实战(一)
【Python】编程练习的解密与实战(一)
37 0
|
4月前
|
算法 Python
Python实战练习示例
Python实战练习示例
42 7
|
7月前
|
iOS开发 Python
Python流程控制语句-条件判断语句练习及应用详解
Python流程控制语句-条件判断语句练习及应用详解
94 0
|
7天前
|
索引 Python
python 格式化、set类型和class类基础知识练习(上)
python 格式化、set类型和class类基础知识练习
23 0
|
2月前
|
Python
Python猜字游戏是一种常见的编程练习
Python猜字游戏是一种常见的编程练习
24 2
|
2月前
|
机器学习/深度学习 人工智能 算法
【Python】编程练习的解密与实战(四)
【Python】编程练习的解密与实战(四)
38 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【Python】编程练习的解密与实战(二)
【Python】编程练习的解密与实战(二)
50 0
|
3月前
|
算法 小程序 搜索推荐
python一百道经典基础练习题目
python一百道经典基础练习题目
58 1
|
8月前
|
NoSQL Python
牛客网Python入门103题练习|【08--元组】
牛客网Python入门103题练习|【08--元组】
124 1