Submission #272728

#TimeUsernameProblemLanguageResultExecution timeMemory
272728shinjanCave (IOI13_cave)C++14
46 / 100
18 ms384 KiB
#include <iostream>
#include <bits/stdc++.h>
#include "cave.h"
using namespace std;
int nadji(int tren,int s[],int d[],int n)
{
    int x;
    for(int i=0;i<n;i++)
    {
        if(d[i]<0)
        {
            s[i]=!s[i];
            x=tryCombination(s);
            if(x>tren)
            {
                d[i]=tren;
                return x;
            }
            if(x<tren)
            {
                d[i]=x;
                if(x==-1)
                {
                    return -1;
                }
                s[i]=!s[i];
            }

        }
    }
}
void exploreCave(int n)
{
    int s[n];
    int d[n];
    for(int i=0;i<n;i++)
    {
        s[i]=0;
        d[i]=-1;
    }
    int tren,prob,res;
    tren=tryCombination(s);
    int x;
    while(tren!=-1)
    {
        prob=tren;
        while(d[prob]>0)
        {
            prob=d[prob];
        }
        s[prob]=(!s[prob]);
        res=tryCombination(s);
        while(res<tren)
        {
            d[prob]=res;
            if(res==-1)
            {
                tren=-1;
                break;
            }
            s[prob]=(!s[prob]);
            prob=res;
            while(d[prob]>0)
            {
                prob=d[prob];
            }
            s[prob]=(!s[prob]);
            res=tryCombination(s);
        }
        if(res>tren && tren!=-1)
        {
            d[prob]=tren;
            tren=res;
        }
        else if(tren==res && tren!=-1)
        {
            tren=nadji(tren,s,d,n);
        }
    }
    for(int i=0;i<n;i++)
    {
        if(d[i]<0)
        {
            s[i]=(!s[i]);
            d[i]=tryCombination(s);
            s[i]=(!s[i]);
        }
    }
    answer(s,d);
}

Compilation message (stderr)

cave.cpp: In function 'void exploreCave(int)':
cave.cpp:43:9: warning: unused variable 'x' [-Wunused-variable]
   43 |     int x;
      |         ^
cave.cpp: In function 'int nadji(int, int*, int*, int)':
cave.cpp:31:1: warning: control reaches end of non-void function [-Wreturn-type]
   31 | }
      | ^
#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...