Submission #300400

#TimeUsernameProblemLanguageResultExecution timeMemory
300400daniel920712Comparing Plants (IOI20_plants)C++14
0 / 100
2 ms2720 KiB
#include "plants.h"
#include <stdio.h>
#include <vector>
#include <utility>
using namespace std;
vector < pair < int , int > > con[100005];
vector < int > all;
int N;
void init(int k,vector<int> r)
{
    int a=0,b=0,i,j,ok=0;
    all=r;
    N=r.size();
    for(i=0;ok==0;i++)
    {
        if(r[(i+N-1)%N]==1!=r[i])
        {
            b=0;
            a++;
            con[i].push_back(make_pair(a,0));
            for(j=i+1;r[(j+N-1)%N]==r[i];j=(j+1)%N)
            {
                //printf("%d %d\n",a,j);
                if(j==N-1) ok=1;
                b++;
                con[j].push_back(make_pair(a,b));
            }
            i=(j+N-1)%N;
        }
    }
	return;
}

int compare_plants(int x, int y)
{
    for(auto i:con[x])
    {
        for(auto j:con[y])
        {
            if(i.first==j.first)
            {
                if(i.second<j.second) return -1;
                return 1;
            }
        }
    }

	return 0;
}

Compilation message (stderr)

plants.cpp: In function 'void init(int, std::vector<int>)':
plants.cpp:16:24: warning: suggest parentheses around comparison in operand of '!=' [-Wparentheses]
   16 |         if(r[(i+N-1)%N]==1!=r[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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...