Submission
Status:
PPPPPPPPPP
Score: 100
User: aml
Problemset: บริษัททำความสะอาด
Language: cpp
Time: 0.003 second
Submitted On: 2024-11-26 19:29:37
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
string str;
cin >> n >> str;
int bd[n][n];
int x=0, y=0;
for(int i=0; i<str.length(); i++){
int s=0;
if(str[i]!='[' && str[i]!=']' && str[i]!=','){
if(str[i+1]==',' || str[i+1]==']'){
s = str[i]-48;
}else{
int j=i,k=0,m=0;
while(str[j]!=']' && str[j]!=','){
k++; j++;
}
int o=k;
while(k>0){
s += (str[i+m]-48)*pow(10,k-1);
k--; m++;
}
i+=o;
}
bd[x][y]=s;
y++;
if(y>=n){
y=0;
x++;
}
}
}
int cl=0;
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(bd[i][j]!=0){
cl+=2;
if(i-1<0) cl+=bd[i][j];
if(j-1<0) cl+=bd[i][j];
if(j+1==n) cl+=bd[i][j];
if(i+1==n) cl+=bd[i][j];
if(bd[i][j]>bd[i-1][j] && i-1>=0) cl+=bd[i][j]-bd[i-1][j];
if(bd[i][j]>bd[i][j-1] && j-1>=0) cl+=bd[i][j]-bd[i][j-1];
if(bd[i][j]>bd[i][j+1] && j+1<n) cl+=bd[i][j]-bd[i][j+1];
if(bd[i][j]>bd[i+1][j] && i+1<n) cl+=bd[i][j]-bd[i+1][j];
}
}
}
cout << cl;
return 0;
}