QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#375322#2833. Hamiltonby_chanceAC ✓17ms7848kbC++141.3kb2024-04-03 09:00:402024-04-03 09:00:40

Judging History

你现在查看的是最新测评结果

  • [2024-04-03 09:00:40]
  • 评测
  • 测评结果:AC
  • 用时:17ms
  • 内存:7848kb
  • [2024-04-03 09:00:40]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=2005;
int n,lst[N],nxt[N],a[N];char s[N][N];
void solve(int st){
	for(int i=0;i<=n+1;i++)lst[i]=nxt[i]=0;
	lst[st]=0;nxt[0]=st;lst[n+1]=st;nxt[st]=n+1;
	char c1='1',c2='0';int now=st;
	for(int i=1;i<=n;i++)if(i!=st){
		if(nxt[now]==n+1){
			nxt[now]=i;nxt[i]=n+1;
			lst[n+1]=i;lst[i]=now;
			if(s[now][i]==c1)now=i;
		}
		else{
			if(s[now][i]==c2&&s[nxt[now]][i]==c1){
				int tmp=(s[lst[now]][i]==c2?lst[now]:i);
				nxt[lst[now]]=i;lst[i]=lst[now];
				nxt[i]=now;lst[now]=i;now=tmp;
			}
			else{
				int tmp;
				if(s[now][i]==c2)tmp=now;
				else if(s[nxt[now]][i]==c2)tmp=i;
				else tmp=nxt[now];
				lst[nxt[now]]=i;nxt[i]=nxt[now];
				lst[i]=now;nxt[now]=i;now=tmp;
			}
		}
		if(now==st)now=lst[n+1],swap(c1,c2);
	}
    int k=0;for(int i=st;i!=n+1;i=nxt[i])a[k++]=i;
	for(int i=0;i<n;i++){
        int cnt=0;
        for(int j=0;j<n-1;j++){
            int u=a[(i+j)%n],v=a[(i+j+1)%n],w=a[(i+j+2)%n];
            if(s[u][v]!=s[v][w])++cnt;
        }
        if(cnt<=1){
            for(int j=0;j<n;j++)
                printf("%d ",a[(i+j)%n]);
            printf("\n");return;
        }
    }
}
int main(){
    while(scanf("%d",&n)!=EOF){
	    for(int i=1;i<=n;i++)scanf("%s",s[i]+1);
	    solve(1);
    }
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3916kb

input:

3
001
000
100
4
0000
0000
0000
0000

output:

1 2 3 
1 2 3 4 

result:

ok 2 cases.

Test #2:

score: 0
Accepted
time: 0ms
memory: 3936kb

input:

3
000
000
000
3
010
100
000
3
011
100
100
3
011
101
110

output:

1 2 3 
1 2 3 
2 3 1 
1 2 3 

result:

ok 4 cases.

Test #3:

score: 0
Accepted
time: 0ms
memory: 3876kb

input:

4
0000
0000
0000
0000
4
0000
0001
0000
0100
4
0100
1010
0100
0000
4
0111
1000
1000
1000
4
0010
0011
1101
0110
4
0111
1011
1100
1100
4
0111
1011
1101
1110
4
0000
0011
0101
0110
4
0101
1010
0100
1000
4
0011
0011
1100
1100
4
0010
0001
1000
0100

output:

1 2 3 4 
1 2 3 4 
1 2 3 4 
2 4 3 1 
1 2 4 3 
3 4 1 2 
1 2 3 4 
2 4 3 1 
3 4 1 2 
1 4 2 3 
1 2 3 4 

result:

ok 11 cases.

Test #4:

score: 0
Accepted
time: 0ms
memory: 3980kb

input:

5
00000
00000
00000
00000
00000
5
00001
00000
00000
00000
10000
5
00010
00010
00000
11000
00000
5
00000
00001
00001
00001
01110
5
00001
00001
00001
00001
11110
5
00101
00100
11011
00100
10100
5
01111
10011
10000
11000
11000
5
00011
00011
00011
11101
11110
5
01101
10111
11001
01001
11110
5
00111
0011...

output:

1 2 3 4 5 
1 2 3 4 5 
1 2 3 4 5 
4 5 1 2 3 
1 2 3 4 5 
1 2 4 5 3 
4 5 3 1 2 
1 2 3 5 4 
1 2 3 5 4 
1 2 5 4 3 
1 2 3 4 5 
5 3 1 2 4 
1 2 4 5 3 
1 2 4 3 5 
5 4 2 3 1 
5 3 1 2 4 
1 2 3 4 5 
1 2 3 5 4 
1 2 5 3 4 
1 2 5 4 3 
1 2 3 5 4 
4 3 1 2 5 
1 2 4 5 3 
2 5 3 4 1 
1 4 5 2 3 
1 2 3 5 4 
4 5 1 2 3 
1 2...

result:

ok 34 cases.

Test #5:

score: 0
Accepted
time: 0ms
memory: 3916kb

input:

6
000000
000000
000000
000000
000000
000000
6
000000
000000
000001
000000
000000
001000
6
010000
100100
000000
010000
000000
000000
6
000100
000000
000100
101010
000100
000000
6
000100
000000
000100
101011
000100
000100
6
001000
001000
110111
001000
001000
001000
6
001100
000100
100100
111011
000100...

output:

1 2 3 4 5 6 
1 2 3 4 5 6 
1 2 4 6 5 3 
1 2 3 5 6 4 
1 2 3 5 6 4 
1 2 4 5 6 3 
1 2 3 5 6 4 
1 2 6 3 5 4 
4 6 5 1 2 3 
1 2 4 6 5 3 
1 2 6 5 4 3 
1 2 3 4 5 6 
1 2 3 4 6 5 
5 6 1 2 3 4 
1 2 3 4 5 6 
1 2 3 4 5 6 
2 6 5 4 3 1 
1 2 3 6 4 5 
1 2 6 5 4 3 
3 6 5 4 1 2 
4 6 5 1 2 3 
6 4 1 2 3 5 
6 4 5 1 2 3 
1...

result:

ok 156 cases.

Test #6:

score: 0
Accepted
time: 1ms
memory: 3984kb

input:

7
0000010
0001011
0001010
0110100
0001001
1110001
0100110
7
0101001
1011000
0101100
1110010
0010010
0001100
1000000
7
0001111
0011001
0100100
1100101
1011000
1000000
1101000
7
0111111
1011101
1101001
1110010
1100010
1001101
1110010
7
0010111
0010001
1101010
0010000
1000011
1010100
1100100
7
0001010
...

output:

1 2 3 5 6 4 7 
5 7 1 2 3 4 6 
5 7 6 1 4 2 3 
5 7 1 2 3 4 6 
1 2 4 5 3 7 6 
4 3 1 2 5 6 7 
6 7 5 4 3 1 2 
1 4 5 2 6 3 7 
1 2 5 6 7 3 4 
1 2 3 5 4 6 7 
7 4 6 5 3 1 2 
1 2 5 6 3 7 4 
1 2 4 3 5 6 7 
1 2 3 4 5 6 7 
6 7 2 3 1 4 5 
6 7 5 4 1 2 3 
3 7 1 6 4 5 2 
7 5 6 1 2 4 3 
1 5 2 4 7 3 6 
1 5 4 2 3 6 7 
...

result:

ok 286 cases.

Test #7:

score: 0
Accepted
time: 1ms
memory: 3868kb

input:

5
01000
10100
01010
00100
00000
9
001101110
001010001
110100110
101010000
010100011
100000000
101000000
101010001
010010010
4
0000
0011
0101
0110
8
00100101
00101100
11000011
00001111
01010101
11011000
00110000
10111000
9
000000001
001101000
010000100
010000111
000000000
010000111
001101010
00010110...

output:

1 2 3 4 5 
1 2 6 5 7 4 9 8 3 
2 4 3 1 
1 2 4 3 5 7 6 8 
9 8 6 2 3 1 4 5 7 
1 4 2 3 
1 2 3 6 4 5 
1 2 3 4 6 5 
7 5 3 4 1 2 6 
1 4 2 3 5 6 7 
10 8 5 1 2 3 4 7 6 9 
7 10 9 8 1 2 3 5 6 4 
1 2 6 5 3 4 
1 2 6 8 7 3 5 4 
1 2 3 5 8 9 6 7 4 
1 2 3 
1 2 3 
1 2 6 5 4 3 
1 2 3 7 6 5 4 
1 2 3 
1 2 3 
4 3 1 2 5 
...

result:

ok 322 cases.

Test #8:

score: 0
Accepted
time: 1ms
memory: 3936kb

input:

10
0010001000
0010011001
1101101001
0010111000
0011000110
0101001100
1111010001
0000110011
0000100101
0110001110
10
0000000010
0000001001
0000001101
0000100000
0001010111
0000101011
0110010100
0010101000
1000110000
0110110000
10
0110010111
1011111110
1100101010
0100001101
0110001111
1100001010
01111...

output:

1 2 8 7 9 6 10 4 5 3 
10 6 5 1 2 3 4 8 9 7 
1 2 3 5 10 7 9 8 6 4 
1 2 3 7 8 4 10 9 6 5 
1 4 5 2 10 9 8 7 6 3 
1 2 5 6 7 8 4 10 9 3 
10 9 8 7 6 4 3 1 2 5 
1 2 4 7 8 3 10 9 6 5 
9 10 2 3 1 4 5 7 6 8 
1 2 3 5 10 9 8 4 7 6 
1 2 5 6 4 7 3 9 8 10 
1 2 3 4 10 5 9 7 8 6 
1 2 3 5 7 6 8 4 9 10 
1 2 3 4 9 8 10...

result:

ok 200 cases.

Test #9:

score: 0
Accepted
time: 1ms
memory: 3880kb

input:

10
0110101100
1010100111
1101100101
0010111010
1111001010
0001000000
1001100111
1110001001
0101101000
0110001100
10
0111110111
1001111100
1001100100
1110101111
1111001010
1100001000
0101110100
1111001010
1001100100
1001000000
10
0100000111
1011111001
0100001111
0100100110
0101011100
0100100110
01101...

output:

1 2 3 4 5 7 8 10 9 6 
7 10 9 6 8 1 2 4 3 5 
1 2 5 7 8 6 9 3 10 4 
8 10 4 1 2 3 6 7 5 9 
1 4 2 10 3 9 8 7 5 6 
9 10 6 7 1 2 3 4 5 8 
1 2 3 5 10 4 9 8 7 6 
1 2 4 3 5 9 8 10 6 7 
9 10 3 4 1 2 5 6 7 8 
1 5 2 4 3 8 10 9 6 7 
1 2 3 4 5 6 8 7 9 10 
10 9 8 7 6 4 1 2 3 5 
1 2 4 5 6 7 9 10 3 8 
1 2 3 6 7 4 9 ...

result:

ok 200 cases.

Test #10:

score: 0
Accepted
time: 0ms
memory: 3956kb

input:

20
00011111000111100010
00100111111000000010
01011011101000100111
10100010000100000010
10100100000010101101
11001001010010000111
11110000010000111001
11100100111000010101
01100001011101100010
01000111100111011001
01100001100111111111
10010000111001010000
10001100011001001000
10000000111110111010
101...

output:

20 17 16 14 11 8 10 9 3 1 2 4 6 7 5 12 13 15 18 19 
1 2 4 5 6 3 7 8 9 12 18 19 17 16 14 15 13 10 11 
12 22 21 11 5 8 7 6 3 1 2 4 10 9 13 16 15 17 14 19 18 20 
13 12 11 7 10 9 8 4 1 2 3 5 6 
1 2 3 6 5 7 4 8 11 14 15 10 16 13 18 20 23 25 29 30 28 24 27 26 22 21 19 17 12 9 
1 2 4 3 7 9 13 17 19 18 20 2...

result:

ok 72 cases.

Test #11:

score: 0
Accepted
time: 1ms
memory: 4104kb

input:

59
01110100011001000100111000110110010001011111001011011101100
10001011111001111100111111100010111011100101001100001000101
10000011101010011100111011000001101110001100001110110101001
10001100100110101001000000101101101110001110111001110001101
010101010101101111110011111000100101111111101001111100111...

output:

56 59 58 57 55 53 51 47 46 44 43 40 39 36 34 33 32 28 23 22 21 19 14 15 11 9 8 4 7 6 3 1 2 5 10 12 13 17 18 16 20 24 25 26 27 30 31 29 35 37 38 42 41 45 48 50 49 52 54 
62 63 57 54 48 51 50 47 49 46 44 43 42 39 34 33 32 31 29 28 26 27 16 25 15 11 9 7 1 2 4 5 6 3 8 10 12 13 18 19 21 20 22 14 23 17 24...

result:

ok 29 cases.

Test #12:

score: 0
Accepted
time: 2ms
memory: 4312kb

input:

160
0010110100011110110110110001100110111000000100001100110101001011100101011100011100111011011011010011010110101100000011111010110111001011001100010000101111001101
000011011110000111010100011011010001001101001100111010101101001011001101001001000001011010001101100111011110110101111010101100000101001...

output:

1 2 3 4 5 8 10 11 9 12 13 15 16 17 14 19 21 24 25 26 27 32 33 36 37 41 40 42 43 46 50 49 52 53 51 54 56 62 63 61 64 66 69 71 72 74 75 76 77 78 80 79 81 83 86 87 85 89 88 91 93 94 95 92 97 98 96 99 100 90 105 106 108 110 112 113 116 115 117 119 120 118 123 125 131 132 124 135 136 138 139 141 142 143 ...

result:

ok 14 cases.

Test #13:

score: 0
Accepted
time: 2ms
memory: 4760kb

input:

438
01000100111101110010100101010001000101100011101011001001011110011100000110001001100101100101110011110111001101001101100111110010011001000110100110101001001101110001110011101010100010110100001011110011001000000001111111011001001010011101110010110111011111100011111101101001101010101010110000000111...

output:

1 2 4 3 5 8 7 9 11 10 12 14 15 16 17 13 18 6 23 22 26 25 28 27 30 29 31 24 33 32 34 35 21 36 37 38 20 39 19 40 46 50 52 53 51 54 55 60 61 59 62 63 58 64 56 65 66 67 69 70 71 68 72 57 73 49 75 74 76 80 79 81 84 86 85 87 83 88 82 89 90 98 101 102 103 104 105 106 107 108 109 100 110 112 113 111 114 118...

result:

ok 7 cases.

Test #14:

score: 0
Accepted
time: 6ms
memory: 6324kb

input:

1227
0100010000101001111110111010100100001100101111001011101010010000100111110110000001101101000101010011000101100110010011010100010011111000101101011001010111010010101001100100011000100000101011011011110101010011011110111101110010100010101111010101011001100001000110011101101010010011110010011011100...

output:

1 2 3 5 6 11 14 13 16 17 15 18 21 22 26 25 32 31 33 30 39 38 40 41 37 44 46 47 49 55 57 58 56 59 60 54 61 53 62 70 71 72 82 86 87 93 94 95 96 98 97 99 106 110 111 109 112 107 114 115 117 118 116 120 119 121 113 122 125 129 128 130 127 132 138 139 135 146 145 148 149 150 147 151 152 153 144 154 155 1...

result:

ok 2 cases.

Test #15:

score: 0
Accepted
time: 6ms
memory: 7124kb

input:

1078
0111011100111011000000110100010011001100100101011100111000110001110111110010111010110111010110001010100111101001110111010010000001000100110000000010000010111010101000000110101011011011000001100000011111010001010001101111011110111110000110111111111111101100110100011001110110111011111001110010110...

output:

1078 1075 1069 1068 1064 1063 1059 1054 1058 1056 1057 1055 1053 1050 1049 1043 1042 1041 1037 1033 1034 1031 1023 1030 1029 1025 1028 1026 1027 1022 1016 1018 1017 1009 1013 1012 1011 1010 991 989 990 986 987 984 983 977 982 981 980 979 978 960 959 957 958 956 955 954 952 953 944 951 950 949 948 93...

result:

ok 2 cases.

Test #16:

score: 0
Accepted
time: 6ms
memory: 7720kb

input:

1310
0110101010101111001001001110010101000100000000011001001110111010011000110110010000001110111100110100110110110000011001000101100100000011011111011100010001101111001100100000011100111111101101001011000101000011100101111011100101011111000100101110011110001101110110100111101101011000000000101000101...

output:

1 2 3 7 8 6 9 5 13 12 14 19 18 20 24 29 30 31 32 34 39 40 41 38 43 42 44 46 47 45 48 52 54 53 56 60 69 76 77 84 88 87 89 85 93 92 95 94 98 97 99 102 104 105 103 106 101 107 108 109 110 100 115 114 116 113 117 118 120 119 125 126 121 127 128 124 129 131 132 123 133 130 135 137 138 139 136 145 150 155...

result:

ok 2 cases.

Test #17:

score: 0
Accepted
time: 12ms
memory: 6816kb

input:

1542
0000100001001001100011001101100001110111010111001110111110011011001000110010001111000000100011101001000100000001111001110100110101101111000011100010000100000111010001010110101110000001000001110100101111100001110010111000111001010111011100100100111011010101001100100101110110011000001011001000011...

output:

1542 1541 1494 1493 1488 1484 1486 1485 1430 1427 1426 1423 1415 1420 1419 1418 1417 1416 1410 1408 1409 1404 1407 1406 1405 1402 1403 1401 1395 1400 1397 1399 1398 1396 1394 1390 1388 1382 1380 1378 1376 1374 1369 1370 1368 1359 1356 1355 1351 1350 1349 1345 1344 1342 1341 1339 1337 1338 1330 1331 ...

result:

ok 2 cases.

Test #18:

score: 0
Accepted
time: 8ms
memory: 7844kb

input:

2000
0101010000001001011001110100110110001010001110110101101100010010011100000111001100000000110111011111100001110001111011101101110010100100001001110010001111011110011011010000100001011100000000110011000110010100101010110100001010101001111101011001110011010001100110000110101110000001000101001101010...

output:

1 2 4 3 7 10 12 11 13 14 8 15 16 17 9 20 21 19 23 24 26 27 30 32 35 34 43 45 44 46 37 48 49 47 52 51 53 50 57 61 62 60 63 65 66 69 71 73 74 75 76 72 77 70 78 79 80 68 81 64 85 86 87 88 94 93 97 98 96 100 101 103 102 106 105 113 115 116 118 122 129 130 132 131 134 135 136 133 137 138 139 140 128 141 ...

result:

ok 1 cases.

Test #19:

score: 0
Accepted
time: 17ms
memory: 7788kb

input:

2000
0100001100010101000111011110110000001010100001111010011110111010011101000001100111011101101100000100100011001100011101011110101011101000010000000001010110001100011111100011010110101010001100011100011100000111011011100010110010100001111101011001010111111101011100111011110001101000111100110101000...

output:

1996 1990 1995 1994 1985 1987 1986 1983 1984 1982 1979 1981 1951 1980 1950 1948 1942 1945 1921 1941 1938 1940 1920 1939 1917 1919 1918 1916 1915 1912 1897 1895 1887 1884 1885 1876 1855 1845 1844 1843 1840 1841 1839 1838 1837 1834 1830 1828 1829 1826 1825 1822 1823 1806 1805 1801 1800 1797 1799 1791 ...

result:

ok 1 cases.

Test #20:

score: 0
Accepted
time: 17ms
memory: 7836kb

input:

2000
0110101010100011101110010101000111001011110000101111001110111111100111000101010001110111000110110001010000010101101001011001111111011111111111011111000011100001111110000101100100000110100100100110110010000101101101100100001101100010011100000011110000100100011110111001101001101100110111011101011...

output:

1998 2000 1999 1997 1994 1995 1993 1989 1992 1991 1990 1980 1978 1977 1975 1974 1972 1973 1966 1969 1968 1965 1935 1880 1877 1876 1869 1867 1866 1862 1863 1846 1845 1833 1832 1826 1824 1823 1822 1821 1820 1818 1819 1814 1812 1811 1805 1804 1803 1791 1797 1795 1796 1793 1794 1792 1790 1767 1789 1788 ...

result:

ok 1 cases.

Test #21:

score: 0
Accepted
time: 8ms
memory: 7772kb

input:

2000
0110000110000000010000010011101111110001110101010000000001101110101010101001111001010100100101001100010100101000110001000101000101010011011000000100011110100001000010000111100110111010110001000100011100100011111001011011111011111001101101111011111011111010011100001111010001011101110000000001011...

output:

1 2 3 4 6 5 8 7 9 10 12 11 13 20 22 24 26 27 28 29 30 33 37 38 36 39 40 34 42 43 49 50 48 51 47 52 41 53 46 55 60 61 56 62 59 63 66 68 69 67 70 71 72 76 77 78 79 80 81 83 88 93 94 92 96 95 97 99 101 103 105 106 104 107 108 111 112 110 114 113 117 122 123 121 124 125 130 131 128 132 133 129 135 146 1...

result:

ok 1 cases.

Test #22:

score: 0
Accepted
time: 4ms
memory: 7848kb

input:

2000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 ...

result:

ok 1 cases.

Test #23:

score: 0
Accepted
time: 4ms
memory: 7768kb

input:

2000
0111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 ...

result:

ok 1 cases.