zoukankan      html  css  js  c++  java
  • PAT乙级 1065. 单身狗(25) by Python

    1065. 单身狗(25)

    时间限制
    300 ms
    内存限制
    65536 kB
    代码长度限制
    8000 B
    判题程序
    Standard
    作者
    CHEN, Yue

    “单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。

    输入格式:

    输入第一行给出一个正整数N(<=50000),是已知夫妻/伴侣的对数;随后N行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;之后给出一个正整数M(<=10000),为参加派对的总人数;随后一行给出这M位客人的ID,以空格分隔。题目保证无人重婚或脚踩两条船。

    输出格式:

    首先第一行输出落单客人的总人数;随后第二行按ID递增顺序列出落单的客人。ID间用1个空格分隔,行的首尾不得有多余空格。

    输入样例:
    3
    11111 22222
    33333 44444
    55555 66666
    7
    55555 44444 10000 88888 22222 11111 23333
    
    输出样例:
    5
    10000 23333 44444 55555 88888


    Python源码:
     1 sum_couple = int(input())
     2 couples = []
     3 for i in range(sum_couple):
     4   name = input()
     5   a = name.split()[0]
     6   b = name.split()[1]
     7   c = ((a,b),(b,a))
     8   couples.extend(c)
     9 dcouples=dict(couples)
    10 
    11 sum_guest = int(input())
    12 guest = []
    13 str = input()
    14 for i in range(sum_guest):
    15   guest.append(str.split()[i])
    16 
    17 sum_single = 0
    18 single = []
    19 for i in range(sum_guest):
    20   if guest[i] in dcouples:
    21     x=dcouples.get(guest[i])
    22     if x in guest:
    23       sum_single-=1
    24     else:
    25       single.append(guest[i])
    26   else:
    27     single.append(guest[i])
    28 
    29 print(len(single))
    30 if len(single)>0:
    31   single.sort()
    32   print(single[0],end='')
    33   if len(single)>1:
    34     for i in range(1,len(single)):
    35       print(" ",end='')
    36       print(single[i],end='')

    结果:

    测试点3 4 运行超时,未知错误

  • 相关阅读:
    linux编程之main()函数启动过程【转】
    dlmalloc(一)【转】
    Linux进程调度原理【转】
    Linux内存管理原理【转】
    malloc原理和内存碎片【转】
    Linux MTD系统剖析【转】
    linux驱动开发:用户空间操作LCD显示简单的图片【转】
    LCD驱动分析【转】
    LCD常用接口原理【转】
    LCD之mipi DSI接口驱动调试流程【转】
  • 原文地址:https://www.cnblogs.com/Dragon5/p/6368570.html
Copyright © 2011-2022 走看看