| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1359933 | ibo | Paprike (COI18_paprike) | C++20 | 25 ms | 16500 KiB |
#include <bits/stdc++.h>
using namespace std;
#define int long long
// #define ll long long
#define endl "\n"
#define run ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0)
const int MAX = 100010;
const int inf = 1e18;
const int MOD = 1e9+7;
unordered_map<int,vector<int>> graphs;
vector<bool> visited;
int h[MAX];
int sum=0;
int cnt=0;
int n,k;
int dfs(int node,int parent){
visited[node]=1;
sum=h[node];
for(auto i:graphs[node]){
if(i==parent) continue;
int childsum = dfs(i,node);
sum+=childsum;
if(sum>k){
cnt++;
sum=0;
}
}
return sum;
}
signed main(){
run;
system("Color 0A");
cin >> n >> k;
visited.resize(n+1,0);
for(int i=1; i<=n; i++) cin >> h[i];
int m = n-1;
while(m--){
int u,v;
cin >> u >> v;
graphs[u].push_back(v);
graphs[v].push_back(u);
}
dfs(1,0);
cout << cnt;
}
// By VaLiYeV
컴파일 시 표준 에러 (stderr) 메시지
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
