/*
* Author : Apu Das Orgho
* Problem : The Monster's Dice (Easy Version)
* Created on: 27-09-2025
*/
#include<bits/stdc++.h>
#define iamspeed ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define endl '\n'
#define ll int
using namespace std;
const int N = 5e6 + 5;
const ll mod = 998244353;
string s, ss;
ll d, x, y, z, cnt, t, tt, cnt2, sum, ans, res, q, n, m, k, i, j;
vector<pair<ll,ll> > graph[N];
ll dijk(int sz, int dest, int src) {
priority_queue<pair<ll,ll> > pq;
pq.push({0, src});
vector<bool> vis(sz + 2, 0);
while (!pq.empty()) {
auto [cost,node] = pq.top();
pq.pop();
cost *= -1;
if (node == dest) {
return cost;
}
if (vis[node])continue;
vis[node] = true;
for (auto [child,wt]: graph[node]) {
pq.push({-cost - wt, child});
}
}
return -1;
}
int main() {
iamspeed
///freopen("input.txt","r",stdin);
///freopen("output.txt","w",stdout);
cin >> n >> m >> q;
set<ll> st;
int id = 1;
map<ll,ll> mp;
map<ll, bool> block;
vector<pair<ll,ll> > pr;
st.insert(1);
st.insert(n);
while (m--) {
cin >> x >> y >> z;
st.insert(x);
st.insert(y);
pr.push_back({x, y});
}
vector<ll> queries(q);
for (i = 0; i < q; i++) {
cin >> queries[i];
st.insert(queries[i]);
}
vector<ll> v2;
copy(st.begin(), st.end(), back_inserter(v2));
st.clear();
vector<pair<ll,ll> > v;
for (ll x: v2) {
for (i = 0; i <= 6; i++) {
if (!st.count(x + i) && x + i <= n) {
st.insert(x + i);
}
}
}
for (ll val: st) {
mp[val] = id++;
}
ll sz = id;
for (auto [val,id]: mp) {
v.push_back({val, id});
}
sort(v.begin(), v.end());
for (i = 0; i <= id + 5; i++) {
graph[i].clear();
}
for (auto [xx,yy]: pr) {
xx = mp[xx], yy = mp[yy];
block[xx] = true;
graph[xx].push_back({yy, 0});
}
for (i = 0; i < v.size(); i++) {
auto [ai,id] = v[i];
if (block[id])continue;
int ct = 0;
for (j = i + 1; j < v.size(); j++) {
auto [aj,nid] = v[j];
ll dist = (aj - ai) / 6 + ((aj - ai) % 6 != 0);
graph[id].push_back({nid, dist});
if (aj == v[j - 1].first + 1)ct++;
else ct = 1;
if (ct >= 6)break;
}
}
for (int id = 0; id < q; id++) {
cout << dijk(sz, mp[n], mp[queries[id]]) << endl;
}
return 0;
}
LyoKKiBBdXRob3IgICAgIDogQXB1IERhcyBPcmdobwogKiBQcm9ibGVtICAgOiBUaGUgTW9uc3RlcidzIERpY2UgKEVhc3kgVmVyc2lvbikKICogQ3JlYXRlZCBvbjogMjctMDktMjAyNQogKi8KI2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBpYW1zcGVlZCBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTtjaW4udGllKE5VTEwpO2NvdXQudGllKE5VTEwpOwojZGVmaW5lIGVuZGwgJ1xuJwojZGVmaW5lIGxsIGludAp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBpbnQgTiA9IDVlNiArIDU7CmNvbnN0IGxsIG1vZCA9IDk5ODI0NDM1MzsKc3RyaW5nIHMsIHNzOwpsbCBkLCB4LCB5LCB6LCBjbnQsIHQsIHR0LCBjbnQyLCBzdW0sIGFucywgcmVzLCBxLCBuLCBtLCBrLCBpLCBqOwp2ZWN0b3I8cGFpcjxsbCxsbD4gPiBncmFwaFtOXTsKbGwgZGlqayhpbnQgc3osIGludCBkZXN0LCBpbnQgc3JjKSB7CiAgICBwcmlvcml0eV9xdWV1ZTxwYWlyPGxsLGxsPiA+IHBxOwogICAgcHEucHVzaCh7MCwgc3JjfSk7CiAgICB2ZWN0b3I8Ym9vbD4gdmlzKHN6ICsgMiwgMCk7CiAgICB3aGlsZSAoIXBxLmVtcHR5KCkpIHsKICAgICAgICBhdXRvIFtjb3N0LG5vZGVdID0gcHEudG9wKCk7CiAgICAgICAgcHEucG9wKCk7CiAgICAgICAgY29zdCAqPSAtMTsKICAgICAgICBpZiAobm9kZSA9PSBkZXN0KSB7CiAgICAgICAgICAgIHJldHVybiBjb3N0OwogICAgICAgIH0KICAgICAgICBpZiAodmlzW25vZGVdKWNvbnRpbnVlOwogICAgICAgIHZpc1tub2RlXSA9IHRydWU7CiAgICAgICAgZm9yIChhdXRvIFtjaGlsZCx3dF06IGdyYXBoW25vZGVdKSB7CiAgICAgICAgICAgIHBxLnB1c2goey1jb3N0IC0gd3QsIGNoaWxkfSk7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIC0xOwp9CgppbnQgbWFpbigpIHsKICAgIGlhbXNwZWVkCiAgICAvLy9mcmVvcGVuKCJpbnB1dC50eHQiLCJyIixzdGRpbik7CiAgICAvLy9mcmVvcGVuKCJvdXRwdXQudHh0IiwidyIsc3Rkb3V0KTsKICAgIGNpbiA+PiBuID4+IG0gPj4gcTsKICAgIHNldDxsbD4gc3Q7CiAgICBpbnQgaWQgPSAxOwogICAgbWFwPGxsLGxsPiBtcDsKICAgIG1hcDxsbCwgYm9vbD4gYmxvY2s7CiAgICB2ZWN0b3I8cGFpcjxsbCxsbD4gPiBwcjsKICAgIHN0Lmluc2VydCgxKTsKICAgIHN0Lmluc2VydChuKTsKICAgIHdoaWxlIChtLS0pIHsKICAgICAgICBjaW4gPj4geCA+PiB5ID4+IHo7CiAgICAgICAgc3QuaW5zZXJ0KHgpOwogICAgICAgIHN0Lmluc2VydCh5KTsKICAgICAgICBwci5wdXNoX2JhY2soe3gsIHl9KTsKICAgIH0KICAgIHZlY3RvcjxsbD4gcXVlcmllcyhxKTsKICAgIGZvciAoaSA9IDA7IGkgPCBxOyBpKyspIHsKICAgICAgICBjaW4gPj4gcXVlcmllc1tpXTsKICAgICAgICBzdC5pbnNlcnQocXVlcmllc1tpXSk7CiAgICB9CiAgICB2ZWN0b3I8bGw+IHYyOwogICAgY29weShzdC5iZWdpbigpLCBzdC5lbmQoKSwgYmFja19pbnNlcnRlcih2MikpOwogICAgc3QuY2xlYXIoKTsKICAgIHZlY3RvcjxwYWlyPGxsLGxsPiA+IHY7CiAgICBmb3IgKGxsIHg6IHYyKSB7CiAgICAgICAgZm9yIChpID0gMDsgaSA8PSA2OyBpKyspIHsKICAgICAgICAgICAgaWYgKCFzdC5jb3VudCh4ICsgaSkgJiYgeCArIGkgPD0gbikgewogICAgICAgICAgICAgICAgc3QuaW5zZXJ0KHggKyBpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGZvciAobGwgdmFsOiBzdCkgewogICAgICAgIG1wW3ZhbF0gPSBpZCsrOwogICAgfQogICAgbGwgc3ogPSBpZDsKICAgIGZvciAoYXV0byBbdmFsLGlkXTogbXApIHsKICAgICAgICB2LnB1c2hfYmFjayh7dmFsLCBpZH0pOwogICAgfQogICAgc29ydCh2LmJlZ2luKCksIHYuZW5kKCkpOwogICAgZm9yIChpID0gMDsgaSA8PSBpZCArIDU7IGkrKykgewogICAgICAgIGdyYXBoW2ldLmNsZWFyKCk7CiAgICB9CiAgICBmb3IgKGF1dG8gW3h4LHl5XTogcHIpIHsKICAgICAgICB4eCA9IG1wW3h4XSwgeXkgPSBtcFt5eV07CiAgICAgICAgYmxvY2tbeHhdID0gdHJ1ZTsKICAgICAgICBncmFwaFt4eF0ucHVzaF9iYWNrKHt5eSwgMH0pOwogICAgfQogICAgZm9yIChpID0gMDsgaSA8IHYuc2l6ZSgpOyBpKyspIHsKICAgICAgICBhdXRvIFthaSxpZF0gPSB2W2ldOwogICAgICAgIGlmIChibG9ja1tpZF0pY29udGludWU7CiAgICAgICAgaW50IGN0ID0gMDsKICAgICAgICBmb3IgKGogPSBpICsgMTsgaiA8IHYuc2l6ZSgpOyBqKyspIHsKICAgICAgICAgICAgYXV0byBbYWosbmlkXSA9IHZbal07CiAgICAgICAgICAgIGxsIGRpc3QgPSAoYWogLSBhaSkgLyA2ICsgKChhaiAtIGFpKSAlIDYgIT0gMCk7CiAgICAgICAgICAgIGdyYXBoW2lkXS5wdXNoX2JhY2soe25pZCwgZGlzdH0pOwogICAgICAgICAgICBpZiAoYWogPT0gdltqIC0gMV0uZmlyc3QgKyAxKWN0Kys7CiAgICAgICAgICAgIGVsc2UgY3QgPSAxOwogICAgICAgICAgICBpZiAoY3QgPj0gNilicmVhazsKICAgICAgICB9CiAgICB9CiAgICBmb3IgKGludCBpZCA9IDA7IGlkIDwgcTsgaWQrKykgewogICAgICAgIGNvdXQgPDwgZGlqayhzeiwgbXBbbl0sIG1wW3F1ZXJpZXNbaWRdXSkgPDwgZW5kbDsKICAgIH0KCiAgICByZXR1cm4gMDsKfQo=