Submission #840419

#TimeUsernameProblemLanguageResultExecution timeMemory
840419ogkostyaLongest Trip (IOI23_longesttrip)C++17
5 / 100
10 ms292 KiB
#include "longesttrip.h"

std::vector<int> longest_trip(int N, int D)
{

    std::vector<int> an1 = {};
    std::vector<int> an2 = {};

    an1.push_back(0);

    std::vector<int> temp1 = {};
    std::vector<int> temp2 = {};
    for (size_t i = 1; i < N; i++)
    {
        temp1.clear();
        temp1.push_back(i);
        temp2.clear();
        temp2.push_back(an1.back());

        if (are_connected(temp1, temp2))
        {
            an1.push_back(i);
        }
        else
        {
            if (an2.size() == 0)
            {
                an2.push_back(i);
            }
            else
            {
                temp2.clear();
                temp2.push_back(an2.back());
                if (are_connected(temp1, temp2))
                {
                    an2.push_back(i);
                }
                else
                {
                    while (an2.size() > 0)
                    {
                        an1.push_back(an2.back());
                        an2.pop_back();
                    }
                    an2.push_back(i);
                }
            }
        }
    }

    return an1;
}

Compilation message (stderr)

longesttrip.cpp: In function 'std::vector<int> longest_trip(int, int)':
longesttrip.cpp:13:26: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   13 |     for (size_t i = 1; i < N; i++)
      |                        ~~^~~
#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...