제출 #981228

#제출 시각아이디문제언어결과실행 시간메모리
981228Faisal_Saqib도로 폐쇄 (APIO21_roads)C++17
5 / 100
52 ms4188 KiB
#include "roads.h"
#include <bits/stdc++.h>
#include <vector>
using namespace std;
#define ll long long
vector<long long> minimum_closure_costs(int n, std::vector<int> u,std::vector<int> v,std::vector<int> w) {
  bool subtask1=1;
  vector<long long> ans(n);
  for(int i=0;i<(n-1);i++)
  {
    subtask1&=(u[i]==0);
    ans[0]+=w[i];
  }
  if(subtask1)
  {
    sort(begin(w),end(w));
    for(int i=1;i<n;i++)
    {
      ans[i]=ans[i-1]-w[n-i-1];  
    }
    return ans;
  }
  else{
    bool subtask2=1;
    for(int i=0;i<(n-1);i++)
    {
      subtask2&=(u[i]==i and v[i]==(i+1));
    }
    if(subtask2)
    {
      ll even=0,odd=0;
      for(int i=0;i<(n-1);i++)
      {
        if(i%2)
        {
          odd+=w[i];
        }
        else{
          even+=w[i];
        }
      }
      ans[1]=min(odd,even);
      return ans;
    }
    else{

    }
  }
  return std::vector<long long>(n, 0);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...