#include #include #include #include #include #include #include #include #include #include #include #include #include #include // std::stringstream #include #include using namespace atcoder; using mint = modint998244353; //using mint = modint1000000007; using namespace std; using ll = long long; static const double pi = 3.141592653589793; const int INF = (1 << 29); const ll mod = 998244353; // ifstream ifs(""); ファイルはワークスペースのトップにおく int main() { int n,k; cin >> n >> k; int m1;cin >> m1; vector a(m1); map mp; for(int i=0;i> a[i]; mp[a[i]] = true; } int m2;cin >> m2; vector b(m2); map mp2; for(int i=0;i> b[i]; mp2[b[i]] = true; } vector dp(n+1,vector(2,0)); //dp[n][0 or 1] 靴が汚れているか dp[0][0] = true; for(int i=0;i