CF549B.Looksery Party

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

The Looksery company, consisting of nn staff members, is planning another big party. Every employee has his phone number and the phone numbers of his friends in the phone book. Everyone who comes to the party, sends messages to his contacts about how cool it is. At the same time everyone is trying to spend as much time on the fun as possible, so they send messages to everyone without special thinking, moreover, each person even sends a message to himself or herself.

Igor and Max, Looksery developers, started a dispute on how many messages each person gets. Igor indicates nn numbers, the ii -th of which indicates how many messages, in his view, the ii -th employee is going to take. If Igor guesses correctly at least one of these numbers, he wins, otherwise Max wins.

You support Max in this debate, so you need, given the contact lists of the employees, to determine whether there is a situation where Igor loses. Specifically, you need to determine which employees should come to the party, and which should not, so after all the visitors send messages to their contacts, each employee received a number of messages that is different from what Igor stated.

输入格式

The first line contains a single integer nn ( 1<=n<=1001<=n<=100 ) — the number of employees of company Looksery.

Next nn lines contain the description of the contact lists of the employees. The ii -th of these lines contains a string of length nn , consisting of digits zero and one, specifying the contact list of the ii -th employee. If the jj -th character of the ii -th string equals 1, then the jj -th employee is in the ii -th employee's contact list, otherwise he isn't. It is guaranteed that the ii -th character of the ii -th line is always equal to 1.

The last line contains nn space-separated integers: a1,a2,...,ana_{1},a_{2},...,a_{n} ( 0<=ai<=n0<=a_{i}<=n ), where aia_{i} represents the number of messages that the ii -th employee should get according to Igor.

输出格式

In the first line print a single integer mm — the number of employees who should come to the party so that Igor loses the dispute.

In the second line print mm space-separated integers — the numbers of these employees in an arbitrary order.

If Igor wins the dispute in any case, print -1.

If there are multiple possible solutions, print any of them.

输入输出样例

  • 输入#1

    3
    101
    010
    001
    0 1 2
    

    输出#1

    1
    1 
    
  • 输入#2

    1
    1
    1
    

    输出#2

    0
    
    
  • 输入#3

    4
    1111
    0101
    1110
    0001
    1 0 1 0
    

    输出#3

    4
    1 2 3 4 
    

说明/提示

In the first sample Igor supposes that the first employee will receive 00 messages. Since he isn't contained in any other contact list he must come to the party in order to receive one message from himself. If he is the only who come to the party then he will receive 11 message, the second employee will receive 00 messages and the third will also receive 11 message. Thereby Igor won't guess any number.

In the second sample if the single employee comes to the party he receives 11 message and Igor wins, so he shouldn't do it.

In the third sample the first employee will receive 22 messages, the second — 33 , the third — 22 , the fourth — 33 .

首页