Submission #1091843

# Submission time Handle Problem Language Result Execution time Memory
1091843 2024-09-22T10:28:23 Z Jakub_Wozniak Tracks in the Snow (BOI13_tracks) C++14
93.4375 / 100
2000 ms 79700 KB
#include <bits/stdc++.h>
#include <stdio.h>
using namespace std;
const int maxn = 4009;
typedef long long ll;
int N , M;
string s[maxn];
string SA;
int a , b , c;
vector <pair<int,int>> R;
bool vis[maxn][maxn];
int MAXI = 0;

void pr()
{
    R.push_back({-1,0});
    R.push_back({1,0});
    R.push_back({0,1});
    R.push_back({0,-1});
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin >> N >> M;
    for(int i = 0 ; i <= M+1 ; i++)SA.push_back( '.');
    s[0] = SA;
    s[N+1] = SA;


    pr();
    for(int i = 1 ; i <= N  ;i++)
    {
        cin >> SA;
        s[i] = '.';
        s[i] += SA;
        s[i].push_back('.');
    }

    priority_queue <pair<int,int>> q;
    pair<int,int> DS;
    q.push({-1,1*maxn+1});
    int i , j;
    vis[1][1] = 1;

    while(!q.empty())
    {
        DS = q.top();
        c = -DS.first; 
        i = DS.second/maxn;
        j = DS.second%maxn;
        q.pop();
        
        MAXI = max(MAXI , c);

        for(int k = 0 ; k < R.size() ; k++)
        {
            a = i+R[k].first;
            b = j+R[k].second;
            if(s[a][b] == '.' || vis[a][b])continue;
            vis[a][b] = 1;
            if(s[a][b] == s[i][j]){ q.push({-c,a*maxn+b});}
            else {q.push({-(c+1),a*maxn+b});}
        }
    }

    cout << MAXI << '\n';


    return 0;
}

Compilation message

tracks.cpp: In function 'int main()':
tracks.cpp:58:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   58 |         for(int k = 0 ; k < R.size() ; k++)
      |                         ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 28 ms 3160 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 1 ms 604 KB Output is correct
4 Correct 16 ms 3164 KB Output is correct
5 Correct 3 ms 1880 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 0 ms 604 KB Output is correct
8 Correct 1 ms 860 KB Output is correct
9 Correct 1 ms 856 KB Output is correct
10 Correct 4 ms 1624 KB Output is correct
11 Correct 4 ms 1368 KB Output is correct
12 Correct 12 ms 2012 KB Output is correct
13 Correct 4 ms 1880 KB Output is correct
14 Correct 3 ms 1884 KB Output is correct
15 Correct 22 ms 3164 KB Output is correct
16 Correct 28 ms 3164 KB Output is correct
17 Correct 14 ms 2904 KB Output is correct
18 Correct 16 ms 3160 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 7 ms 15452 KB Output is correct
2 Correct 75 ms 10076 KB Output is correct
3 Correct 240 ms 63060 KB Output is correct
4 Correct 81 ms 18780 KB Output is correct
5 Correct 137 ms 38648 KB Output is correct
6 Execution timed out 2036 ms 79576 KB Time limit exceeded
7 Correct 11 ms 16220 KB Output is correct
8 Correct 6 ms 15448 KB Output is correct
9 Correct 3 ms 604 KB Output is correct
10 Correct 1 ms 600 KB Output is correct
11 Correct 7 ms 15744 KB Output is correct
12 Correct 1 ms 1116 KB Output is correct
13 Correct 84 ms 10076 KB Output is correct
14 Correct 44 ms 6744 KB Output is correct
15 Correct 13 ms 7256 KB Output is correct
16 Correct 38 ms 3932 KB Output is correct
17 Correct 200 ms 20560 KB Output is correct
18 Correct 46 ms 20060 KB Output is correct
19 Correct 83 ms 18768 KB Output is correct
20 Correct 61 ms 17492 KB Output is correct
21 Correct 149 ms 40028 KB Output is correct
22 Correct 131 ms 38736 KB Output is correct
23 Correct 413 ms 32956 KB Output is correct
24 Correct 108 ms 39248 KB Output is correct
25 Correct 211 ms 63052 KB Output is correct
26 Correct 949 ms 50264 KB Output is correct
27 Correct 1609 ms 65344 KB Output is correct
28 Execution timed out 2087 ms 79700 KB Time limit exceeded
29 Execution timed out 2021 ms 71496 KB Time limit exceeded
30 Correct 1835 ms 70220 KB Output is correct
31 Correct 1302 ms 43900 KB Output is correct
32 Correct 1261 ms 64212 KB Output is correct