이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
#include<iostream>
#include<cmath>
#include<stdlib.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<pair<int, int> > vpii;
typedef pair<ll,ll> pll;
typedef vector<ll> vll;
#define FOR(i,a,b) for (int i = (a); i < (b); ++i)
#define F0R(i,a) FOR(i,0,a)
#define ROF(i,a,b) for (int i = (b); i >= (a); --i)
#define R0F(i,a) ROF(i,0,a)
#define trav(a,x) for (auto& a: x)
#define mp make_pair
#define pb push_back
#define rsz resize
#define sz(x) int(x.size())
#define all(x) begin(x), end(x)
#define f first
#define s second
#define out(x) cout<<x<<'\n';
#define in(x) cin>>x;
#define inarr(a,x,y) for(int i=x;i<y;i++){cin>>a[i];}
#define incor(a,x,y) for(int i=x;i<y;i++){cin>>a[i].f>>a[i].s;}
int dx[4] = { -1, 0, 1, 0 };
int dy[4] = { 0, 1, 0, -1 };
const int mod = 1e9 + 7;
vll minimum_closure_costs(int n, vi u, vi v, vi w)
{
bool s1 = true;
FOR(i,0,n-1)
if(u[i] != 0)
s1 = false;
if(s1)
{
ll ans = 0;
vll val;
sort(all(w));
val.pb(0);
FOR(i,0,n-1)
{
ans += w[i];
val.pb(ans);
}
reverse(all(val));
return val;
}
bool s2 = true;
FOR(i,0,n-1)
if(u[i] != i || v[i] != i + 1)
s2 = false;
if(s2)
{
vll ans(n);
FOR(i,0,n-1)
ans[0] += w[i];
vll dp(n - 1);
FOR(i,0,n-1)
{
dp[i] = min((i == 0 ? 0 : dp[i - 1]) + w[i], (i - 2 < 0 ? 0 : dp[i - 2]) + (i - 1 < 0 ? 0 : w[i - 1]));//dp[i-1]+w[i] or dp[i-2]+w[i-1]
}
ans[1] = dp.back();
return ans;
}
return vll(n, 0);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |