Python3 PAT (Basic Level) 【乙级】 - 1018 锤子剪刀布(18)

原题链接

思路, 这里的代码 我用字典做的,个人认为对python初学的朋友,应该是有帮助的,相信大家一路走来用列表都用吐了。美中不足的是最后一个检查点我是超时的,望后续满分同学不吝赐教,非常感谢。

A = {'B':0,'C':0,'J':0} #B胜 、 C胜 、 J胜
B = {'B':0,'C':0,'J':0}
def rule(a, b, tie_num):
    if a==b:
        tie_num+=1
    elif a == 'J' and b== 'C' :
            B['C']+=1
    elif a == 'J' and b== 'B' :
            A['J']+=1
    elif a == 'B' and b == 'J':
            B['J']+=1
    elif a == 'C' and b == 'J':
            A['C']+=1
    elif a == 'B' and b == 'C':
            A['B']+=1
    elif a == 'C' and b == 'B':
            B['B']+=1
    return  tie_num
n = int(input())
tie_num = 0
for x in range(n):
    a,b=input().split()
    tie_num=rule(a,b,tie_num)
count_A = A['B']+A['J']+A['C']
count_B = B['B']+B['J']+B['C']
result1 = []
result1.append(str(count_A))
result1.append(str(tie_num))
result1.append(str(count_B))
print(' '.join(result1))
result2=[x for x in  reversed(result1)]
print(' '.join(result2))
print(max(A, key=A.get),max(B,key=B.get))
### PAT 1053 乙级 测试点 解析 对于PAT Basic Level 1053题目,虽然未提供具体引用内容,但可以通过已知的相似题型解析来推测其可能涉及的内容和测试点。 #### 题目背景概述 通常情况下,PAT乙级题目会围绕基础算法、数据结构以及简单的逻辑推理展开。假设1053是一道关于字符串处理或简单计算的题目,则可以从以下几个方面考虑: - **输入验证**:程序需对输入数据的有效性进行初步校验[^1]。 - **边界条件**:特别关注极端情况下的行为表现,例如空输入、单个元素或其他特殊场景[^3]。 - **性能优化**:如果涉及到大量数据运算,应采用高效算法减少时间复杂度[^2]。 以下是基于常见模式构建的一个通用解决方案框架(假定该题与字符串匹配有关),并附带部分Python实现代码作为参考: ```python def process_input(data_list): result = [] for item in data_list: if validate(item): # 判断当前项是否符合条件 processed_item = handle_logic(item) # 执行特定业务逻辑 result.append(processed_item) return result def validate(input_str): """验证输入字符串是否符合预期格式""" count_p = input_str.count(&#39;P&#39;) count_t = input_str.count(&#39;T&#39;) if not (count_p == 1 and count_t == 1 and &#39;P&#39; < &#39;T&#39;): return False parts = input_str.split(&#39;P&#39;, maxsplit=1)[-1].split(&#39;T&#39;, maxsplit=1) if len(parts) != 2 or any(not part.isdigit() for part in parts): return False prefix_a_count, suffix_a_count = map(int, parts) if prefix_a_count * int(parts[0]) != suffix_a_count: return False return True def handle_logic(validated_str): """进一步处理有效字符串""" pass # 实际操作取决于具体需求定义 # 示例调用流程 sample_data = ["APAPAAT", "APT"] output_results = process_input(sample_data) print(output_results) ``` 上述代码片段展示了如何通过函数封装提高可读性和维护便利性的同时完成基本功能开发[^4]。 --- #### 关键测试点说明 1. **唯一性检测** 当存在多个候选对象时,需要明确区分哪些属于目标范围内的独立个体。 2. **异常值过滤** 对于超出正常区间或者不符合既定规则的数据记录予以剔除,并给出适当提示信息[^5]。 3. **效率考量** 若面临大规模并发请求环境,则有必要引入缓存机制或者其他加速策略降低响应延迟。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值