| 1 | Check cell | (0,0) | 0 | None | [['1','1','0'], ['0','1','0'], ['0','0','1']] |
| 2 | Found '1', increment count | (0,0) | 1 | None | [['1','1','0'], ['0','1','0'], ['0','0','1']] |
| 3 | DFS start | (0,0) | 1 | (0,0) | [['V','1','0'], ['0','1','0'], ['0','0','1']] |
| 4 | DFS visit neighbor | (0,1) | 1 | (0,0),(0,1) | [['V','V','0'], ['0','1','0'], ['0','0','1']] |
| 5 | DFS visit neighbor | (1,1) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 6 | DFS ends | N/A | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 7 | Check cell | (0,1) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 8 | Check cell | (0,2) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 9 | Check cell | (1,0) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 10 | Check cell | (1,1) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 11 | Check cell | (1,2) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 12 | Check cell | (2,0) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 13 | Check cell | (2,1) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 14 | Check cell | (2,2) | 1 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 15 | Found '1', increment count | (2,2) | 2 | (0,0),(0,1),(1,1) | [['V','V','0'], ['0','V','0'], ['0','0','1']] |
| 16 | DFS start | (2,2) | 2 | (0,0),(0,1),(1,1),(2,2) | [['V','V','0'], ['0','V','0'], ['0','0','V']] |
| 17 | DFS ends | N/A | 2 | (0,0),(0,1),(1,1),(2,2) | [['V','V','0'], ['0','V','0'], ['0','0','V']] |
| 18 | Check cell | (2,2) | 2 | (0,0),(0,1),(1,1),(2,2) | [['V','V','0'], ['0','V','0'], ['0','0','V']] |
| 19 | All cells checked | N/A | 2 | (0,0),(0,1),(1,1),(2,2) | [['V','V','0'], ['0','V','0'], ['0','0','V']] |