Submission #89300

# Submission time Handle Problem Language Result Execution time Memory
89300 2018-12-11T16:31:34 Z vvash17 Triumphal arch (POI13_luk) C++14
0 / 100
2000 ms 35868 KB
/*************************************************************************
 *                                                                       *
 *                    XX Olimpiada Informatyczna                         *
 *                                                                       *
 *   Zadanie:              Luk triumfalny                                *
 *   Autor:                Karol Pokorski                                *
 *   Zlozonosc czasowa:    O(n^2)                                        *
 *   Zlozonosc pamieciowa: O(n)                                          *
 *   Opis:                 Rozwiazanie wolne                             *
 *                                                                       *
 *************************************************************************/

#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;

const int MAXN = 1000001;

vector<int> adj[MAXN];
bool visited[MAXN];
int a = 0;
int Check(int u, int k,int height) {
	if(height>=a)a = height;
    int numChildren = 0, sumTree = 0;
	
    visited[u] = true;

    for (int i = 0; i < (int)adj[u].size(); i++)
        if (!visited[adj[u][i]]) {
            numChildren++;
            sumTree += Check(adj[u][i], k,height+1);
        }

    return max(0, numChildren+sumTree);
}

int main() {
    int N, ret;

    ret = scanf("%d", &N);
    if (ret < 0)
        return 0;
    for (int i = 0; i < N-1; i++) {
        int u, v;

        ret = scanf("%d%d", &u, &v);
        u--;
        v--;

        adj[u].push_back(v);
        adj[v].push_back(u);
    }

    for (int i = 0; i <= N; i++) {
        fill(visited, visited+N, false);
		int tmp = Check(0, i,0);
		if(a!=0){
			
        if (tmp%a == 0 &&tmp/a == i) {
            printf("%d\n", i);
            return 0;
        }
		
		}
    }

    return 0;
}
# Verdict Execution time Memory Grader output
1 Incorrect 27 ms 23800 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 26 ms 23800 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 26 ms 23820 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 41 ms 24064 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2051 ms 24276 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2029 ms 25272 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2065 ms 28944 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2064 ms 32460 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2040 ms 35868 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Execution timed out 2020 ms 35868 KB Time limit exceeded
2 Halted 0 ms 0 KB -