1461B - Find the Spruce - CodeForces Solution


brute force dp implementation *1400

Please click on ads to support us..

C++ Code:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
char arr[510][510];
ll jilu[510][510];
void solve()
{
    int n,m;
    cin>>n>>m;
    memset(jilu,0,sizeof jilu);
    for(int i=1;i<=n;i++)
        cin>>arr[i]+1;
    for(int i=1;i<=n;i++)
    {
        int flag=0,cnt=1;
        for(int j=1;j<=m;j++)
        {
            if(flag==0&&arr[i][j]=='*')
            {
                flag=1;
                jilu[i][j]=++cnt;
            }
            else if(arr[i][j]=='*')
            {
                jilu[i][j]=cnt;
            }
            else
                flag=0;
        }
    }
    ll ans=0;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(arr[i][j]=='*')
            {
                for(int k=1;k<=n;k++)
                {
                    if(i+k>n)
                    {
                        ans+=k;
                        break;
                    }
                    if(j-k<0||j+k>m)
                    {
                        ans+=k;
                        break;
                    }
                    if(jilu[i+k][j-k]!=0&&jilu[i+k][j+k]!=0&&jilu[i+k][j+k]==jilu[i+k][j-k])
                        continue;
                    else
                    {
                        ans+=k;
                        break;
                    }
                }
            }
        }
    }
    cout<<ans<<'\n';
}
int main()
{
    int t;
    cin>>t;
    while(t--)solve();
}

   	 	 	 	 						  									 	


Comments

Submit
0 Comments
More Questions

1633C - Kill the Monster
1611A - Make Even
1030B - Vasya and Cornfield
1631A - Min Max Swap
1296B - Food Buying
133A - HQ9+
1650D - Twist the Permutation
1209A - Paint the Numbers
1234A - Equalize Prices Again
1613A - Long Comparison
1624B - Make AP
660B - Seating On Bus
405A - Gravity Flip
499B - Lecture
709A - Juicer
1358C - Celex Update
1466B - Last minute enhancements
450B - Jzzhu and Sequences
1582C - Grandma Capa Knits a Scarf
492A - Vanya and Cubes
217A - Ice Skating
270A - Fancy Fence
181A - Series of Crimes
1638A - Reverse
1654C - Alice and the Cake
369A - Valera and Plates
1626A - Equidistant Letters
977D - Divide by three multiply by two
1654B - Prefix Removals
1654A - Maximum Cake Tastiness