New Year Permutation
题意翻译
## 题意翻译
用户 ainta 有一个排列 $p_1,p_2,...,p_n$ 。新年到了,他希望把他的排列变得尽可能漂亮。
当且仅当存在整数 $k$($1 \le k \le n$)使 $a_1=b_1,a_2=b_2,\ldots,a_{k-1}=b_{k-1}$ 和 $a_k<b_k$ 都成立,排列 $a_1,a_2,...,a_n$ 比 $b_1,b_2,...,b_n$ 更漂亮。
排列 $p$ 非常敏感,只可以通过交换两个不同的元素来修改它。但是交换两个不同的元素比你想象得要难。给出一个 $n\times n$ 的二进制矩阵 $A$ ,当且仅当 $A_{i,j}=1$ 时,用户 ainta 可以交换两个元素 $p_i,p_j (1<=i,j<=n,i\neq j)$ 的值。
给定排列 $p$ 和矩阵 $A$ ,用户 ainta 想知道他能得到的最漂亮的排列。
## 输入格式
第一行包含一个整数 $n$($1 \le n \le 300$),即排列 $p$ 的长度。
第二行包含 $n$ 个由空格分开的整数 $p_1,p_2,...,p_n$ ,保证每个不同的整数只出现一次。
接下来 $n$ 行描述矩阵 $A$ 。保证 $A_{i,j}=A_{j,i}$($1 \le i<j \le n$)和 $A_{i,i}=0$($1 \le i \le n$)。
## 输出格式
一行 $n$ 个空格分隔的整数,表示得到的最漂亮的排列。
题目描述
User ainta has a permutation $ p_{1},p_{2},...,p_{n} $ . As the New Year is coming, he wants to make his permutation as pretty as possible.
Permutation $ a_{1},a_{2},...,a_{n} $ is prettier than permutation $ b_{1},b_{2},...,b_{n} $ , if and only if there exists an integer $ k $ ( $ 1<=k<=n $ ) where $ a_{1}=b_{1},a_{2}=b_{2},...,a_{k-1}=b_{k-1} $ and $ a_{k}<b_{k} $ all holds.
As known, permutation $ p $ is so sensitive that it could be only modified by swapping two distinct elements. But swapping two elements is harder than you think. Given an $ n×n $ binary matrix $ A $ , user ainta can swap the values of $ p_{i} $ and $ p_{j} $ ( $ 1<=i,j<=n $ , $ i≠j $ ) if and only if $ A_{i,j}=1 $ .
Given the permutation $ p $ and the matrix $ A $ , user ainta wants to know the prettiest permutation that he can obtain.
输入输出格式
输入格式
The first line contains an integer $ n $ ( $ 1<=n<=300 $ ) — the size of the permutation $ p $ .
The second line contains $ n $ space-separated integers $ p_{1},p_{2},...,p_{n} $ — the permutation $ p $ that user ainta has. Each integer between $ 1 $ and $ n $ occurs exactly once in the given permutation.
Next $ n $ lines describe the matrix $ A $ . The $ i $ -th line contains $ n $ characters '0' or '1' and describes the $ i $ -th row of $ A $ . The $ j $ -th character of the $ i $ -th line $ A_{i,j} $ is the element on the intersection of the $ i $ -th row and the $ j $ -th column of A. It is guaranteed that, for all integers $ i,j $ where $ 1<=i<j<=n $ , $ A_{i,j}=A_{j,i} $ holds. Also, for all integers $ i $ where $ 1<=i<=n $ , $ A_{i,i}=0 $ holds.
输出格式
In the first and only line, print $ n $ space-separated integers, describing the prettiest permutation that can be obtained.
输入输出样例
输入样例 #1
7
5 2 4 3 6 7 1
0001001
0000000
0000010
1000001
0000000
0010000
1001000
输出样例 #1
1 2 4 3 6 7 5
输入样例 #2
5
4 2 1 5 3
00100
00011
10010
01101
01010
输出样例 #2
1 2 3 4 5
说明
In the first sample, the swap needed to obtain the prettiest permutation is: $ (p_{1},p_{7}) $ .
In the second sample, the swaps needed to obtain the prettiest permutation is $ (p_{1},p_{3}),(p_{4},p_{5}),(p_{3},p_{4}) $ .
![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF500B/59b255b2f3043242b52d4ded8b641ffb75297426.png)A permutation $ p $ is a sequence of integers $ p_{1},p_{2},...,p_{n} $ , consisting of $ n $ distinct positive integers, each of them doesn't exceed $ n $ . The $ i $ -th element of the permutation $ p $ is denoted as $ p_{i} $ . The size of the permutation $ p $ is denoted as $ n $ .