Submission #1732721


Source Code Expand

#include <bits/stdc++.h>
#define REP(i,a,b) for(int i=(a);i<(b);i++)
#define RREP(i,a,b) for(int i=(a);i>=(b);i--)
#define pq priority_queue
typedef long long ll; typedef long double ld;
using namespace std;
const int INF=1e9, MOD=1e9+7, around[]={0,1,1,-1,-1,0,-1,1,0,0};
const ld PI=abs(acos(-1));
int n,m,a,b,c,li[310][310],dist[310];

int main(){
	cin >> n >> m;
	REP(i,0,m){
		cin >> a >> b >> c;
		li[a-1][b-1]=li[b-1][a-1]=c;
	}
	
	int s=INF;
	REP(i,1,n){
		if(li[0][i]){
			int tmp=li[0][i];
			li[0][i]=li[i][0]=0;
			fill(dist,dist+310,INF);
			
			dist[i]=0;
			pq<pair<int,int>,vector<pair<int,int>>,greater<pair<int,int>>> que;
			pair<int,int> cur=make_pair(0,i);
			que.push(cur);
			while(!que.empty()){
				cur=que.top();
				que.pop();
				
				int from=cur.second;
				REP(i,0,n){
					if(li[from][i]){
						if(dist[i]>dist[from]+li[from][i]){
							dist[i]=dist[from]+li[from][i];
							que.push(make_pair(dist[i],i));
						}
					}
				}
			}
			
			if(dist[0]!=INF) s=min(s,dist[0]+tmp);
			li[0][i]=li[i][0]=tmp;
		}
	}
		
	
	cout << (s==INF?-1:s) << endl;
	return 0;
}

Submission Info

Submission Time
Task C - Blue Bird
User ecasdqina
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1149 Byte
Status AC
Exec Time 348 ms
Memory 640 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 33
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask1_01.txt AC 92 ms 512 KB
subtask1_02.txt AC 29 ms 512 KB
subtask1_03.txt AC 227 ms 640 KB
subtask1_04.txt AC 2 ms 256 KB
subtask1_05.txt AC 38 ms 384 KB
subtask1_06.txt AC 190 ms 640 KB
subtask1_07.txt AC 7 ms 384 KB
subtask1_08.txt AC 1 ms 384 KB
subtask1_09.txt AC 147 ms 512 KB
subtask1_10.txt AC 78 ms 512 KB
subtask1_11.txt AC 1 ms 256 KB
subtask1_12.txt AC 8 ms 512 KB
subtask1_13.txt AC 18 ms 384 KB
subtask1_14.txt AC 2 ms 384 KB
subtask1_15.txt AC 283 ms 640 KB
subtask1_16.txt AC 192 ms 640 KB
subtask1_17.txt AC 8 ms 640 KB
subtask1_18.txt AC 337 ms 640 KB
subtask1_19.txt AC 348 ms 640 KB
subtask1_20.txt AC 37 ms 640 KB
subtask1_21.txt AC 69 ms 640 KB
subtask1_22.txt AC 333 ms 640 KB
subtask1_23.txt AC 230 ms 640 KB
subtask1_24.txt AC 48 ms 640 KB
subtask1_25.txt AC 205 ms 640 KB
subtask1_26.txt AC 99 ms 640 KB
subtask1_27.txt AC 94 ms 640 KB
subtask1_28.txt AC 11 ms 640 KB
subtask1_29.txt AC 104 ms 640 KB
subtask1_30.txt AC 2 ms 640 KB