Submission #1269924

#TimeUsernameProblemLanguageResultExecution timeMemory
1269924Faggi사이버랜드 (APIO23_cyberland)C++20
0 / 100
3092 ms19772 KiB
#include <bits/stdc++.h>
#define ll long long
#define sz(x) int(x.size())
#define all(x) x.begin(),x.end()
#define fr first
#define se second
#define pb push_back
#define mp make_pair
using namespace std;

const int MAXN=1e5+1;

double solve(int N, int M, int K, int H, std::vector<int> x, std::vector<int> y, std::vector<int> c, std::vector<int> arr) {
    vector<ll>dist(N,0);
    ll i, j;
    double act;
    for(i=0; i<M; i++)
        dist[min(x[i],y[i])]=c[i];
    vector<double>dis(K+1,0);
    for(i=0; i<H; i++)
    {
        vector<double>nd=dis;
        if(arr[i]==0)
        {
            for(j=0; j<=K; j++)
                nd[j]=0;
        }
        else if(arr[i]==2)
        {
            for(j=0; j<K; j++)
                nd[j+1]=min(dis[j]/double(2),nd[j+1]);
        }
        for(j=0; j<=K; j++)
            nd[j]=nd[j]+dist[i];
        dis=nd;
    }
    double mi=dis[0];
    for(j=1; j<=K; j++)
        mi=min(mi,dis[j]);
    return mi;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...