基础练习 芯片测试

问题描述

  有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。
  每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。
  给出所有芯片的测试结果,问哪些芯片是好芯片。

输入格式

  输入数据第一行为一个整数n,表示芯片个数。
  第二行到第n+1行为n*n的一张表,每行n个数据。表中的每个数据为0或1,在这n行中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第j块芯片时得到的测试结果,1表示好,0表示坏,i=j时一律为1(并不表示该芯片对本身的测试结果。芯片不能对本身进行测试)。

输出格式

  按从小到大的顺序输出所有好芯片的编号

样例输入

3
1 0 1
0 1 0
1 0 1

样例输出

1 3

观察发现判断某个芯片的好坏就是判断其他芯片判断这个芯片是坏的居多还是好的居多。因为好的芯片比坏的芯片多。

import java.util.Scanner;  

    public class Main{
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            int n;
            n = input.nextInt();
            int[][] b= new int[n][2];
            int[][] a = new int[n][n];
            for(int i=0;i<n;i++){
                for(int j=0;j<n;j++){
                    a[i][j] = input.nextInt();
                }
            }
            for(int i=0;i<n;i++){
                for(int j=0;j<n;j++){
                    if(a[j][i]==0)
                        b[i][0]++;
                    else
                        b[i][1]++;
                }
            }
            boolean begin = true;
            for(int i=0;i<n;i++){
                if(b[i][0]<b[i][1]){
                    if(begin){
                        System.out.print(i+1);
                        begin = false;
                    }
                    else
                        System.out.print(" "+(i+1));
                }
            }
        }

 }  
时间: 2024-10-06 13:47:01

基础练习 芯片测试的相关文章

[BASIC-23] 芯片测试

基础练习 芯片测试 时间限制:1.0s   内存限制:512.0MB 问题描述 有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多. 每个芯片都能用来测试其他芯片.用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏.而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关). 给出所有芯片的测试结果,问哪些芯片是好芯片. 输入格式 输入数据第一行为一个整数n,表示芯片个数. 第二行到第n+1行为n*n的一张表,每行n个数据.表中的每个数据为0或1,在

谢烟客---------Linux之Bash基础特性条件测试&&自定义退出状态码(6)

条件测试 判断某需求是否满足,需要由测试机制来实现. 根据命令的执行状态结果,表达不同的测试条件 1.根据id命令的执行状态结果,判断用户是否存在 [[email protected] ~]# id root uid=0(root) gid=0(root) groups=0(root) [[email protected] ~]# echo $? 0 [[email protected] ~]# id help id: help: no such user [[email protected] 

芯片测试

一.写在前面 抽屉原理: 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面至少放两个苹果.这一现象就是我们所说的“抽屉原理”. 抽屉原理的一般含义为:“如果每个抽屉代表一个集合,每一个苹果就可以代表一个元素,假如有n+1个元素放到n个集合中去,其中必定有一个集合里至少有两个元素.” 抽屉原理有时也被称为鸽巢原理.它是组合数学中一个重要的原理. 第一抽屉原理 原理1: 把多于n+1个的物体放到n个抽屉里,则至少有一个抽屉里的东西不少于两件.   证明(反证法

基础训练 芯片测试

芯片测试 /*************根据题意可知,如果是坏芯片则对应的列中除了对角线位置处所有的0的个数一定大于1的个数,又非好即坏************/ #include<iostream> #include<vector> using namespace std; int main(){ int n, flag=0; cin>>n; vector<vector<int> > vi(n+1, vector<int>(n+1,

用C++实现:芯片测试

问题描述 有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多. 每个芯片都能用来测试其他芯片.用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏.而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关). 给出所有芯片的测试结果,问哪些芯片是好芯片. 输入格式 输入数据第一行为一个整数n,表示芯片个数. 第二行到第n+1行为n*n的一张表,每行n个数据.表中的每个数据为0或1,在这n行中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第

蓝桥杯 BASIC 23 芯片测试(基础、统计、数组)

[思路]:需要用手写一下.如下图一目了然. [AC代码]: #include <iostream> #include <algorithm> #include <iomanip> #include <cstdio> #include <cstring> using namespace std; #define MAX 20+2 int test[MAX][MAX]; char str[MAX][MAX]; int cnt[MAX]; int ma

【转】你应该了解的基础和2017测试行业的趋势

背景 今天偶然在某个Q群看到大家在聊测试行业发展的趋势,作为一个有那么些经验的娱乐型测试选手,简单写写自己的想法. 方向 测试的发展基本上就两个方向:技术和管理.而我认为这两者是都要学的技能,也就是所谓的经济基础决定上层建筑.当然不是说没有技术就不能做管理,外行管内行自然也有方法,否则所有CEO都得懂各种技术了. 技术 技术方面我认为这么一些是必备的: 测试基本知识 Linux系统的简单操作 一门脚本语言 五花八门的开发知识 测试基本知识不用多说,整套研发流程下来的需求分析.用例设计.评审.缺陷

jQ学习之基础选择器的测试

一:基础选择器参数主要包含了:id,标签名,类,*,还有就是多个选择器共同作为筛选条件的测试 主要测试内容为每个按钮的value html代码: 1 <input type="button" id="btn1" value="选择为one的元素" /> 2 <input type="button" id="btn2" value="选择样式为mini的元素" />

可靠性测试的基础知识——软件可靠性测试

可靠性测试 可靠性测试概念 对软件可靠性进行定量的评估或验证,为了达到和验证软件的可靠性定量要求而对软件进行的测试 软件可靠性测试的目的 (1)通过在有使用代表性的环境中执行软件,以证实软件需求是否正确实现. (2)为进行软件可靠性估计采集准确的数据,预测软件在实际运行中的可靠性. 估计软件可靠性一般可分为四个步骤,即数据采集.模型选择.模型拟合以及软件可靠性评估.可以认为,数据采集是整个软件可靠性估计工作的基础,数据的准确与否关系到软件可靠性评估的准确度. (3)通过软件可靠性测试找出所有对软