답안 #1061084

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1061084 2024-08-16T06:15:54 Z Muhammet 사이버랜드 (APIO23_cyberland) C++17
0 / 100
14 ms 2140 KB
#include <bits/stdc++.h>
#include "cyberland.h"

using namespace std;

#define ff first
#define ss second

double solve(int n, int m, int k, int h, vector<int> x, vector<int> y, vector<int> c, vector<int> arr) {
    if(*max_element(arr.begin(), arr.end()) == 1 and *min_element(arr.begin(), arr.end()) == 1){
        vector <pair<int,int>> v[n];
        for(int i = 0; i < m; i++){
            v[x[i]].push_back({y[i],c[i]});
            v[y[i]].push_back({x[i],c[i]});
        }
        vector <int> d(n,1e9);
        d[0] = 0;
        priority_queue <pair<int,int>> q;
        q.push({0,0});
        while(!q.empty()){
            pair <int,int> w1 = q.top();
            q.pop();
            w1.ff *= (-1);
            if(w1.ff != d[w1.ss]) continue;
            for(auto [i,w] : v[w1.ss]){
                if(d[i] > d[w1.ss] + w){
                    d[i] = d[w1.ss] + w;
                    q.push({-d[i],i});
                }
            }
        }
        if(d[h] == 1e9) d[h] = -1;
        return d[h];
    }
    return -1;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 10 ms 480 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 14 ms 604 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 11 ms 348 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 2140 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 14 ms 568 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 13 ms 344 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 12 ms 348 KB Wrong Answer.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 11 ms 460 KB Wrong Answer.
2 Halted 0 ms 0 KB -