#include<bits/stdc++.h>
using namespace std;
const int N=3e3+5;
int f[N][N];
int n,m,t,a,b,c;
int main(){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
f[i][j]=1e9;
}
}
cin>>n>>m>>t;
for(int i=1;i<=m;i++){
cin>>a>>b>>c;
f[a][b]=c;
}
for(int k=1;k<=n;k++){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
f[i][j]=min(f[i][j],max(f[i][k],f[k][j]));
}
}
}
for(int i=1;i<=t;i++){
cin>>a>>b;
if(f[a][b]==1e9)cout<<'-1'<<endl;
else cout<<f[a][b]<<endl;
}
return 0;
}