Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <string>#include <vector>#include <set>#include <utility>#include <algorithm>using namespace std;int main() {int n,m;cin >> n >> m;vector<string> s(n);for(int i = 0; i < n; i++) {cin >> s[i];}int dx[] = {0,0,1,-1};int dy[] = {1,-1,0,0};int cnt= 0;set<int> sz_cnt;set<vector<pair<int,int> > > shapes;for(int i = 0; i < n; i++) {for(int j = 0; j < m; j++) {if(s[i][j]=='#') {vector<pair<int,int> > island;vector<int> que(n*m*2);int qa,qn;qa = qn = 0;que[qn++] = i;que[qn++] = j;s[i][j] = '*';