Submission #2544582


Source Code Expand

#include<iostream>
#include<stdio.h>
#include<vector>
#include<algorithm>
#include<utility>
#include <bits/stdc++.h>

using namespace std;

/**
ワーシャルフロイド
計算量O(n^3)
全体全の最短距離を求める
**/
#define NODE 301
long long dist[NODE][NODE];
void WF(int num){
	for(int k = 0;k < num;k++){
		for(int i = 0;i < num;i++){
			for(int j = 0;j < num;j++){
				dist[i][j] = min(dist[i][j],dist[i][k] + dist[k][j]);
			}
		}
	}
}

int main(void)
{
  int h,w;
  cin>>h>>w;
  for(int i=0;i<10;i++)
    {
      for(int j=0;j<10;j++)
	{
	  cin>>dist[i][j];
	}
    }
  WF(10);
  int ans=0;
  int tmp;
  for(int i=0;i<h;i++)
    {
      for(int j=0;j<w;j++)
	{
	  cin>>tmp;
	  if(tmp!=-1)
	    {
	      ans+=dist[tmp][1];
	    }
	}
    }
  /**/
  cout<<ans<<endl;
  return 0;
}

Submission Info

Submission Time
Task D - Wall
User ningen2
Language C++14 (GCC 5.4.1)
Score 400
Code Size 851 Byte
Status AC
Exec Time 10 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 19
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, sample_01.txt, sample_02.txt, sample_03.txt
Case Name Status Exec Time Memory
01.txt AC 8 ms 256 KB
02.txt AC 8 ms 256 KB
03.txt AC 7 ms 256 KB
04.txt AC 8 ms 256 KB
05.txt AC 5 ms 256 KB
06.txt AC 8 ms 256 KB
07.txt AC 8 ms 256 KB
08.txt AC 2 ms 256 KB
09.txt AC 2 ms 256 KB
10.txt AC 8 ms 256 KB
11.txt AC 8 ms 256 KB
12.txt AC 8 ms 256 KB
13.txt AC 10 ms 256 KB
14.txt AC 9 ms 256 KB
15.txt AC 1 ms 256 KB
16.txt AC 8 ms 256 KB
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB