题解 | 【模板】序列操作

【模板】序列操作

https://www.nowcoder.com/practice/12da4185c0bb45918cfdc3072e544069

import sys

def solve():
    input = sys.stdin.read
    data = input().split()  # 数据读取
    # print(data) ['5', '1', '8', '1', '9', '7', '1', '6', '8']
    n = int(data[0])
    seq = []
    index = 1
    output_lines = []

    for _ in range(n):
        op = data[index]; index += 1

        if op == '1':
            x = int(data[index]); index += 1
            seq.append(x)
        elif op == '2':
            # if seq:
            seq.pop()
        elif op == '3':
            i = int(data[index]); index += 1
            # print(seq[i])
            output_lines.append(str(seq[i]))
        elif op == '4':
            i = int(data[index]); index += 1
            x = int(data[index]); index += 1
            seq.insert(i+1, x)  # 在 下标 i和i+1间插入x
        elif op == '5':
            seq.sort()  # 从小到大排序
        elif op == '6':
            seq.sort(reverse=True)
        elif op == '7':
            # print(len(seq))
            output_lines.append(str(len(seq)))
        elif op == '8':
            # print(' '.join(map(str,seq)))
            # ' '.join 拼接字符串
            # map(函数, 可迭代对象)
            output_lines.append(' '.join(map(str, seq)))
    # 输出所有结果
    print('\n'.join(output_lines))

solve()

结果收集后再输出 26ms

结果实时输出 88ms

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务