# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
782840 | 2023-07-14T10:15:04 Z | vjudge1 | 사이버랜드 (APIO23_cyberland) | C++17 | 709 ms | 16112 KB |
#include <bits/stdc++.h> using namespace std; //#define int long long //#define mid (start+end)/2 //#define OYY 10000 //#define faster ios_base::sync_with_stdio(false);cin.tie(NULL); const long double OYY=10000000000000000000000000000000000000000000; 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){ int n=N; int m=M; int k=K; vector <vector<pair<long long int,long long int>>> v; v.assign(n,{}); k=min(k,70); for(int i=0;i<m;i++){ int a=x[i]; int b=y[i]; int co=c[i]; v[a].push_back({b,co}); v[b].push_back({a,co}); } vector <long double> uza(n,OYY); uza[0]=0; for(int ip=0;ip<=k+2;ip++){ set <pair<long double,int>> st; for(int i=0;i<n;i++){ st.insert({uza[i],i}); } while(!st.empty()){ int node=st.begin()->second; st.erase(st.begin()); if(node==H)continue; for(int i=0;i<v[node].size();i++){ int go=v[node][i].first; int cost=v[node][i].second; if(uza[go]>uza[node]+cost){ st.erase({uza[go],go}); uza[go]=uza[node]+cost; st.insert({uza[go],go}); } } } auto ne=uza; for(int j=0;j<n;j++){ if(uza[j]<OYY/10){ if(arr[j]==0)ne[j]=0; } else if(arr[j]==2 && ip>1 && ip!=k+2){ for(int i=0;i<v[j].size();i++){ int go=v[j][i].first; int cost=v[j][i].second; ne[go]=min(ne[go],uza[j]/2+(long double)cost); } } } uza=ne; } if(uza[H]>=OYY/10){ return -1; } return uza[H]; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 58 ms | 500 KB | Wrong Answer. |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 257 ms | 888 KB | Correct. |
2 | Correct | 321 ms | 908 KB | Correct. |
3 | Correct | 300 ms | 912 KB | Correct. |
4 | Correct | 311 ms | 868 KB | Correct. |
5 | Correct | 313 ms | 940 KB | Correct. |
6 | Correct | 341 ms | 2620 KB | Correct. |
7 | Correct | 454 ms | 2416 KB | Correct. |
8 | Correct | 223 ms | 4588 KB | Correct. |
9 | Correct | 180 ms | 768 KB | Correct. |
10 | Correct | 181 ms | 820 KB | Correct. |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 294 ms | 804 KB | Correct. |
2 | Correct | 286 ms | 884 KB | Correct. |
3 | Correct | 264 ms | 944 KB | Correct. |
4 | Correct | 193 ms | 740 KB | Correct. |
5 | Correct | 190 ms | 792 KB | Correct. |
6 | Correct | 63 ms | 2068 KB | Correct. |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 709 ms | 12164 KB | Wrong Answer. |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 254 ms | 932 KB | Correct. |
2 | Correct | 260 ms | 844 KB | Correct. |
3 | Correct | 266 ms | 844 KB | Correct. |
4 | Correct | 269 ms | 2368 KB | Correct. |
5 | Correct | 184 ms | 816 KB | Correct. |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 267 ms | 904 KB | Correct. |
2 | Correct | 222 ms | 836 KB | Correct. |
3 | Correct | 666 ms | 16112 KB | Correct. |
4 | Correct | 223 ms | 1932 KB | Correct. |
5 | Correct | 184 ms | 696 KB | Correct. |
6 | Correct | 307 ms | 868 KB | Correct. |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 271 ms | 864 KB | Wrong Answer. |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 516 ms | 876 KB | Wrong Answer. |
2 | Halted | 0 ms | 0 KB | - |