CF486B.OR in Matrix
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Let's define logical OR as an operation on two logical values (i. e. values that belong to the set 0,1 ) that is equal to 1 if either or both of the logical values is set to 1 , otherwise it is 0 . We can define logical OR of three or more logical values in the same manner:
where is equal to 1 if some ai=1 , otherwise it is equal to 0 .
Nam has a matrix A consisting of m rows and n columns. The rows are numbered from 1 to m , columns are numbered from 1 to n . Element at row i ( 1<=i<=m ) and column j ( 1<=j<=n ) is denoted as Aij . All elements of A are either 0 or 1. From matrix A , Nam creates another matrix B of the same size using formula:
.
( Bij is OR of all elements in row i and column j of matrix A )
Nam gives you matrix B and challenges you to guess matrix A . Although Nam is smart, he could probably make a mistake while calculating matrix B , since size of A can be large.
输入格式
The first line contains two integer m and n ( 1<=m,n<=100 ), number of rows and number of columns of matrices respectively.
The next m lines each contain n integers separated by spaces describing rows of matrix B (each element of B is either 0 or 1 ).
输出格式
In the first line, print "NO" if Nam has made a mistake when calculating B , otherwise print "YES". If the first line is "YES", then also print m rows consisting of n integers representing matrix A that can produce given matrix B . If there are several solutions print any one.
输入输出样例
输入#1
2 2 1 0 0 0
输出#1
NO
输入#2
2 3 1 1 1 1 1 1
输出#2
YES 1 1 1 1 1 1
输入#3
2 3 0 1 0 1 1 1
输出#3
YES 0 0 0 0 1 0