Submission #983391

#TimeUsernameProblemLanguageResultExecution timeMemory
983391Faisal_SaqibMars (APIO22_mars)C++17
6 / 100
8 ms4032 KiB
#include "mars.h" #include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define vll vector<ll> const int N=100; int n,m; bool vis[N][N]; char g[N][N]; vector<pair<int,int>> dir={{0,-1},{0,1},{1,0},{-1,0}}; bool valid(int x,int y) { return (0<=x and x<n and 0<=y and y<m and !vis[x][y] and g[x][y]=='1'); } void dfs(int x,int y) { vis[x][y]=1; for(auto [dx,dy]:dir) { if(valid(x+dx,y+dy)) { dfs(x+dx,y+dy); } } } string process(vector <vector<string>> a, int ip, int jp, int k, int na) { m=n=(2*na)+1; for(int i=0;i<n;i++) for(int j=0;j<m;j++) vis[i][j]=0; int side=(2*k+1); // for 0 this is side=1 {// Process information from the previous state for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { for(int pi=0;pi<side;pi++) { for(int pj=0;pj<side;pj++) { g[ip+i+pi][jp+j+pj]=a[i][j][(pi*side)+pj]; } } } } } // cout<<"Hola "<<ip<<' '<<jp<<' '<<k<<' '<<na<<endl; // cout<<"Grid i got Currently\n"; // for(int i=0;i<n;i++) // { // for(int j=0;j<m;j++) // { // cout<<g[i][j]<<' '; // } // cout<<endl; // } if((na-1)==k) // Last iteration { ll cp=0; for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(!vis[i][j] and g[i][j]=='1') { cp++; dfs(i,j); } } } string bp=""; while(cp>0) { bp+=char('0'+(cp%2)); cp/=2; } while(bp.size()<100) bp+='0'; return bp; } else { //side^2 + 4*side + 4 // side+=2; string tp=""; for(int i=0;i<3;i++) { for(int j=0;j<3;j++) { for(int pi=0;pi<side;pi++) { for(int pj=0;pj<side;pj++) { tp+=g[ip+pi+i][jp+pj+j]; } } } } while(tp.size()<100) { tp+='0'; } return tp; } 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...