제출 #141360

#제출 시각아이디문제언어결과실행 시간메모리
141360Ruxandra985Easter Eggs (info1cup17_eastereggs)C++14
0 / 100
3 ms560 KiB
#include <cstdio>
#include <vector>
#include <algorithm>
#include "grader.h"

using namespace std;
vector <int> w[600];
vector <int> eul,isl;
int poz;
void euler (int nod ,int tata){
    int vecin;
    eul.push_back(nod);
    for (int i = 0 ; i < w[nod].size() ; i++){
        vecin = w[nod][i];
        if (vecin!=tata){
            euler (vecin,nod);
        }
    }
    eul.push_back(nod);
}

int findEgg (int n , vector <pair <int,int> > v){
    int st,dr,mid,sol,x,y;
    for (int i=1;i<=n;i++)
        w[i].clear();

    for (int i=0;i<v.size();i++){
        x = v[i].first;
        y = v[i].second;
        w[x].push_back(y);
        w[y].push_back(x);
    }
    eul.clear();
    euler(1,0); /// eul e un vector cu parc euler , dim 2*n
    st = 0;
    dr = eul.size()-1;
    while (st<dr){
        mid = (st + dr)/2;
        /// iei de la st la mid
        isl.clear();
        for (int i=st;i<=mid;i++)
            isl.push_back(eul[i]);
        sol = query(isl);
        if (sol == 0)
            st = mid + 1;
        else dr = mid;
    }
    return eul[st];
}

컴파일 시 표준 에러 (stderr) 메시지

eastereggs.cpp: In function 'void euler(int, int)':
eastereggs.cpp:13:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0 ; i < w[nod].size() ; i++){
                      ~~^~~~~~~~~~~~~~~
eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:27:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i=0;i<v.size();i++){
                  ~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...