File tree Expand file tree Collapse file tree 3 files changed +88
-0
lines changed
Expand file tree Collapse file tree 3 files changed +88
-0
lines changed Original file line number Diff line number Diff line change 1+ import sys
2+
3+ input = sys .stdin .readline
4+ grid = [list (map (str , input ().split ())) for _ in range (5 )]
5+
6+ result = set ()
7+
8+
9+ def dfs (a , b , num ):
10+ if len (num ) == 6 :
11+ result .add (num )
12+ return
13+
14+ dx = [- 1 , 1 , 0 , 0 ]
15+ dy = [0 , 0 , - 1 , 1 ]
16+ for i in range (4 ):
17+ nx , ny = a + dx [i ], b + dy [i ]
18+ if 0 <= nx < 5 and 0 <= ny < 5 :
19+ dfs (nx , ny , num + grid [nx ][ny ])
20+
21+
22+ for i in range (5 ):
23+ for j in range (5 ):
24+ dfs (i , j , grid [i ][j ])
25+
26+ print (len (result ))
27+
28+ """
29+ 1 1 1 1 1
30+ 1 1 1 1 1
31+ 1 1 1 1 1
32+ 1 1 1 2 1
33+ 1 1 1 1 1
34+ """
Original file line number Diff line number Diff line change 1+ import sys
2+ from collections import *
3+
4+ input = sys .stdin .readline
5+
6+ n , m , k = map (int , input ().split ())
7+ grid = [['.' for _ in range (m )] for _ in range (n )]
8+ for _ in range (k ):
9+ r , c = map (int , input ().split ())
10+ grid [r - 1 ][c - 1 ] = '#'
11+
12+ dx = [- 1 , 1 , 0 , 0 ]
13+ dy = [0 , 0 , - 1 , 1 ]
14+ visited = [[0 for _ in range (m )] for _ in range (n )]
15+
16+
17+ def bfs (a , b ):
18+ size = 1
19+ q = deque ([(a , b )])
20+ visited [a ][b ] = 1
21+ while q :
22+ x , y = q .popleft ()
23+ for i in range (4 ):
24+ nx , ny = x + dx [i ], y + dy [i ]
25+ if 0 <= nx < n and 0 <= ny < m and not visited [nx ][ny ]:
26+ if grid [nx ][ny ] == '#' :
27+ size += 1
28+ visited [nx ][ny ] = 1
29+ q .append ((nx , ny ))
30+ return size
31+
32+
33+ result = 0
34+ for i in range (n ):
35+ for j in range (m ):
36+ if grid [i ][j ] == '#' :
37+ result = max (result , bfs (i , j ))
38+
39+ print (result )
40+
41+ """
42+ 3 4 5
43+ 3 2
44+ 2 2
45+ 3 1
46+ 2 3
47+ 1 1
48+ """
Original file line number Diff line number Diff line change 1+ def solution (msg ):
2+ answer = []
3+ dic = {}
4+ for i in range (1 ,27 ):
5+ dic [chr (i + 64 )] = i
6+ return answer
You can’t perform that action at this time.
0 commit comments