This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "mars.h"
#include <bits/stdc++.h>
using namespace std;
int dx[]={1, 0, 0, -1}, dy[]={0, 1, -1, 0};
std::string process(std::vector <std::vector<std::string>> a, int _i, int _j, int _k, int n)
{
vector<vector<int>> vs(3*n+1, vector<int> (3*n+1, 0)), mp(3*n+1, vector<int> (3*n+1, 0));
for (int i=0; i<3; i++)
{
for (int j=0; j<3; j++)
{
for (int k=0; k<(2*n+1)*(2*n+1); k++)
{
mp[i+(k/(2*n+1))][j+(k%(2*n+1))]=a[i][j][k];
}
}
}
if (_k!=n-1)
{
string res(100, '0');
for (int i=0; i<2*n+1; i++) for (int j=0; j<2*n+1; j++) res[(2*n+1)*i+j]=mp[i][j];
//cout<<res<<'\n';
return res;
}
/*
for (int i=0; i<5; i++)
{
for (int j=0; j<5;j ++) cout<<mp[i][j]-'0'<<' ';
cout<<'\n';
}*/
int cnt=0;
for (int i=0; i<2*n+1; i++)
{
for (int j=0; j<2*n+1; j++)
{
if (!vs[i][j]&&mp[i][j]=='1')
{
queue<pair<int, int>> q;
vs[i][j]=1;
q.push({i, j});
cnt++;
while (!q.empty())
{
auto [x, y]=q.front();
q.pop();
for (int dr=0; dr<4; dr++)
{
int cx=x+dx[dr], cy=y+dy[dr];
if (cx<0||cx>2*n||cy<0||cy>2*n||vs[cx][cy]||mp[cx][cy]=='0') continue;
vs[cx][cy]=1;
q.push({cx, cy});
}
}
}
}
}
string res(100, '0');
for (int i=0; i<10; i++) if (cnt&(1<<i)) res[i]='1';
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |