/ SeriousOJ /

Record Detail

Wrong Answer


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 588.0 KiB
#2 Accepted 9ms 772.0 KiB
#3 Wrong Answer 16ms 964.0 KiB
#4 Wrong Answer 17ms 948.0 KiB

Code

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
 
#define pb push_back
#define MOD 1000000007
#define vll vector<ll>
#define endl "\n" 
#define all(v) v.begin(), v.end()
#define mem(a,b) memset(a, b, sizeof(a))
#define co(n) cout << n << endl
#define yes cout << "YES" << endl
#define no cout << "NO" << endl
#define fr(x, n) for (int i = x; i < n; ++i)
#define fraction(x) cout << fixed << setprecision(x)
#define Baba_Yaga ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL);
 
const double eps = 1e-9;
const int N = 2e5+123;
 
ll gcd(ll a,ll b) { return __gcd(a,b); }
ll lcm(ll a,ll b) { return (a*b)/__gcd(a,b); }
 
int dx[] = {0, 0, +1, -1, +1, +1, -1, -1};
int dy[] = {+1, -1, 0, 0, +1, -1, +1, -1};
 

void solve()
{
    ll n, m; cin >> n >> m;
    char arr[n][m];
    ll one  = 0;
    vector<pair<ll,ll>> vp;
    ll how_m = 0;

    for(int i=0; i<n; i++)
    {
        for(int j=0; j<m; j++)
        {
            cin >> arr[i][j];
            if(arr[i][j] == '+')
            {
                one = 1;
                vp.pb({i, j});
                how_m++;
            }
        }
    }
    if(one == 0)
    {
        cout << 0 << endl;
        return;
    }
    if(how_m == n*m)
    {
        cout << min(n, m) * 2 -1 << endl;
        return;
    }
    
    
    
    ll maxi = 0;
    for(int c=0; c<vp.size(); c++)
    {
        ll i = vp[c].first, j = vp[c].second;
           
        ll ct = 0;
        for(int k=1; k <= min(n/2, m/2) ; k++)
        {
            if(i+k >= n || j+k >= m || i-k < 0 || j-k < 0 || arr[i+k][j] != '+' || arr[i-k][j] != '+'|| arr[i][j+k] != '+' || arr[i][j-k] != '+')
            {
                break;
            }
            else ct++;
        }
        maxi = max(maxi, ct);      
    }
     
     cout << maxi * 4 + 1 << endl;

}

int main()
{
    Baba_Yaga;
    ll tc = 1; cin >> tc;
    for(int i=1; i<=tc; i++)
    {
       // cout << "Case " << i << ": ";
        solve();
    }   
}

Information

Submit By
Type
Submission
Problem
P1143 Plus of Pluses
Contest
LU IUJPC : Sylhet Division 2024
Language
C++17 (G++ 13.2.0)
Submit At
2024-12-09 07:44:25
Judged At
2024-12-09 07:44:25
Judged By
Score
4
Total Time
17ms
Peak Memory
964.0 KiB