Submission #1188820

#TimeUsernameProblemLanguageResultExecution timeMemory
1188820irmuunMars (APIO22_mars)C++17
14 / 100
12 ms3492 KiB
#include "mars.h" #include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ff first #define ss second #define all(s) s.begin(),s.end() #define rall(s) s.rbegin(),s.rend() string process(vector<vector<string>> a, int I, int J, int k, int n){ int id[2*n+1][2*n+1]; int cur=0; for(int x=0;x<=2*n;x++){ for(int y=0;y<=2*n;y++){ id[x][y]=cur++; } } vector<int>dx={0,0,-1,1}; vector<int>dy={-1,1,0,0}; string s(100,'0'); if(n<=4){ if(k>0){ for(int x=0;x<3;x++){ for(int y=0;y<3;y++){ int xl=I+x,xr=I+x+2*k; int yl=J+y,yr=J+y+2*k; for(int i=xl;i<=xr;i++){ for(int j=yl;j<=yr;j++){ s[id[i][j]]=a[x][y][id[i][j]]; } } } } } else{ for(int x=0;x<3;x++){ for(int y=0;y<3;y++){ int xl=I+x,xr=I+x+2*k; int yl=J+y,yr=J+y+2*k; for(int i=xl;i<=xr;i++){ for(int j=yl;j<=yr;j++){ s[id[i][j]]=a[x][y][0]; } } } } } if(k<n-1){ return s; } auto vis=vector(2*n+1,vector<bool>(2*n+1,false)); queue<pair<int,int>>q; int ans=0; for(int i=0;i<=2*n;i++){ for(int j=0;j<=2*n;j++){ if(!vis[i][j]&&s[id[i][j]]=='1'){ q.push({i,j}); vis[i][j]=true; ans++; while(!q.empty()){ auto [x,y]=q.front(); q.pop(); for(int l=0;l<4;l++){ int nx=x+dx[l],ny=y+dy[l]; if(nx<0||ny<0||nx>2*n||ny>2*n||vis[nx][ny]||s[id[nx][ny]]=='0') continue; vis[nx][ny]=true; q.push({nx,ny}); } } } } } s=string(100,'0'); for(int i=0;i<30;i++){ if(ans&(1<<i)){ s[i]='1'; } } return s; } return string(100,'0'); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...