Submission #11587

# Submission time Handle Problem Language Result Execution time Memory
11587 2014-12-02T16:29:24 Z gs14004 Senior Postmen (BOI14_postmen) C++
0 / 100
500 ms 6452 KB
#include <cstdio>
#include <vector>
#include <cstring>
using namespace std;
 
int n,m;
int st[1000005], con[1000005], link[1000005], v[500005], sz;
 
vector<int> cyc, temp;
 
void add_edge(int s, int e){
    sz++;
    link[sz] = e; con[sz] = st[s]; st[s] = sz;
    sz++;
    link[sz] = s; con[sz] = st[e]; st[e] = sz;
}
 
void f(int x){
    int p = st[x];
    while (p) {
        int pos = link[p];
        int q = (p+1)/2;
        if(!v[q]){
            v[q]=1;
            f(pos);
        }
        p = con[p];
    }
    st[x] = 0;
    cyc.push_back(x);
}
 
int vis[500005];
int main(){
    scanf("%d %d",&n,&m);
    for (int i=0; i<m; i++) {
        int s,e;
        scanf("%d %d",&s,&e);
        add_edge(s,e);
    }
    f(1);
    for (int i=0; i<cyc.size(); i++) {
        temp.push_back(cyc[i]);
        if(vis[cyc[i]]){
            printf("%d",temp.back());
            temp.pop_back();
            while(temp.back() != cyc[i]){
                printf(" %d",temp.back());
                vis[temp.back()] = 0;
                temp.pop_back();
                if(temp.back() == cyc[i]) printf("\n");
            }
        }
        else vis[cyc[i]] = 1;
    }
}

Compilation message

postmen.cpp: In function 'int main()':
postmen.cpp:42:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i=0; i<cyc.size(); i++) {
                   ~^~~~~~~~~~~
postmen.cpp:35:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d",&n,&m);
     ~~~~~^~~~~~~~~~~~~~~
postmen.cpp:38:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d %d",&s,&e);
         ~~~~~^~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 4 ms 384 KB Output is correct
4 Correct 13 ms 512 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 11 ms 640 KB Output is correct
7 Correct 24 ms 1272 KB Output is correct
8 Correct 6 ms 560 KB Output is correct
9 Execution timed out 568 ms 6308 KB Time limit exceeded
10 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 6 ms 384 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 13 ms 564 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 10 ms 640 KB Output is correct
7 Correct 31 ms 1256 KB Output is correct
8 Correct 6 ms 512 KB Output is correct
9 Execution timed out 570 ms 6452 KB Time limit exceeded
10 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 308 KB Output is correct
2 Correct 4 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 11 ms 512 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 10 ms 640 KB Output is correct
7 Correct 27 ms 1284 KB Output is correct
8 Correct 7 ms 512 KB Output is correct
9 Execution timed out 576 ms 6316 KB Time limit exceeded
10 Halted 0 ms 0 KB -