import std.stdio, std.conv, std.string, std.algorithm;

void main() {
	int H, W;
	int [][10] c;
	auto t = readln().chomp().split().to!(int[])();
	H = t[0]; W = t[1];
	foreach(int i; 0..10) {
		c[i] = readln().chomp().split().to!(int[])();
	}
	foreach(int i; 0..10) {
		foreach(int j; 0..10) {
			foreach(int k; 0..10) {
				c[j][k] = min(c[j][k], c[j][i]+c[i][k]);
			}
		}
	}

	long res = 0;
	foreach(int i; 0..H) {
		t = readln().chomp().split().to!(int[])();
		foreach(int j; 0..W) {
			if(t[j] >= 0) {
				res += c[t[j]][1];
			}
		}
	}
	writeln(res);
}
