• 芯片测试


    描述

    每个芯片都能用来测试其他芯片。已知好芯片比坏芯片多用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。i=j时一律为1(并不表示该芯片对本身的测试结果。芯片不能对本身进行测试)。按从小到大的顺序输出所有好芯片的编号

    样例

    样例输入

    3
    1 0 1
    0 1 0
    1 0 1

    样例输出

    1 3

    思路

    11 12 13
    21 22 23
    31 32 33
    如图3个芯片中一定存在好芯片,且好芯片≥2,那么如果1和3是好芯片,那么测试时第一行和第三行的数据一定相同,也就是说无论是好芯片1还是好芯片2,去测试1、2、3时,结果都是一样的。芯片1、2、3的真假都是定了的,随便用一个真芯片测试,结果都是一样的。所以当某些行数据一样并且总行数>=n/2,那么这些行中的坐标第一个数字就是真芯片

    代码

    n=int(input())
    arr=[]
    
    for i in range(n):
        lis=list(map(int,input().split()))
        arr.extend([lis])
    
    for i in range(n):
        if arr.count(arr[i])>n/2:  #count统计arr中和zrr[i]一样的总行数
            true=[(j+1) for j in range(n) if arr[i]==arr[j]]  #如果是,则把真芯片标号提取出来
            break
    print(' '.join([str(i) for i in true]))
    
    
    
  • 相关阅读:
    安卓学习第25课——imageswitcher
    安卓学习第24课——viewSwitcher
    安卓学习第23课——ratingBar
    安卓学习第22课——seekBar
    减治求有重复元素的全排列
    【POJ 1182 食物链】并查集
    【POJ 2823 Sliding Window】 单调队列
    ID3算法 决策树 C++实现
    用BFS和DFS解决圆盘状态搜索问题
    用哈希表实现图书管理系统
  • 原文地址:https://www.cnblogs.com/thgpddl/p/12462099.html
Copyright © 2020-2023  润新知