class Matrix<T>
{
public Dictionary<KeyValuePair<long, long>, T> dict = new Dictionary<KeyValuePair<long, long>, T>();
T this[long n, long m]
{
get
{
if (dict.ContainsKey(new KeyValuePair<long, long>(n, m)))
return dict[new KeyValuePair<long, long>(n, m)];
else
return default(T);
}
set
{
dict.Add(new KeyValuePair<long, long>(n, m), value);
}
}
}