#include #include #include #include #include #include #include #include #include using namespace std; int main(){ int n; cin >> n; int c; cin >> c; int v; cin >> v; vector > edge(n); vector s(v); for(int i=0; i> s[i]; s[i]--; } vector t(v); for(int i=0; i> t[i]; t[i]--; } vector y(v); for(int i=0; i> y[i]; vector m(v); for(int i=0; i> m[i]; for(int i=0; i > dp(n, vector(c+1, INF)); fill(dp[0].begin(), dp[0].end(), 0); for(int i=0; i= INF){ cout << -1 << endl; }else{ cout << ans << endl; } return 0; }