| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 | 
|---|---|---|---|---|---|---|---|
| 86986 | joseacaz | Deblo (COCI18_deblo) | C++17 | 1085 ms | 15692 KiB | 
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#define MAXN 100005
using namespace std;
typedef long long ll;
ll N, val[MAXN], u, v, vis[MAXN], ans;
vector < ll > Graph[MAXN];
void clear ()
{
    for ( ll i = 1; i <= N; i++ )
        vis[i] = 0;
}
void solve ( ll start, ll node, ll v )
{
    if ( node >= start )
        ans += v;
    
    vis[node] = 1;
    
    for ( auto i : Graph[node] )
        if ( !vis[i] )
            solve ( start, i, v ^ val[i] );
}
int main()
{
    cin >> N;
    for ( ll i = 1; i <= N; i++ )
        cin >> val[i];   
    for ( ll i = 0; i < N - 1; i++ )
    {
        cin >> u >> v;
        Graph[u].push_back ( v );
        Graph[v].push_back ( u );
    }
    
    for ( ll i = 1; i <= N; i++ )
    {
        clear();
        solve ( i, i, val[i] );
    }
    
    cout << ans << "\n";
    return 0;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
