(I2
I150
I6
(dp0
Vtable.%l
p1
(Vmain.cpp
p2
S'#include <algorithm>\r\n#include <iostream>\r\n#include <fstream>\r\n\r\nusing namespace std;\r\n\r\nifstream f("input.txt");\r\nofstream g("output.txt");\r\n\r\nint n , m , x , k , nr , sol , number , aux[100] , c1[100] , c2[100] , t1[100] , t2[100] , v[100];\r\n\r\nvoid bkt(int poz);\r\nbool verif();\r\n\r\nint main() {\r\n    f >> n >> m;\r\n\r\n    for(int i = 1 ; i <= m ; ++i) {\r\n        f >> x;\r\n        c1[x] = 1;\r\n    }\r\n\r\n    f >> k;\r\n\r\n    for(int i = 1 ; i <= k ; ++i) {\r\n        f >> x;\r\n        c2[x] = 1;\r\n    }\r\n\r\n    if(c1[2 * n] == 1 || c2[1] == 1) {\r\n        g << 0;\r\n        return 0;\r\n    }\r\n\r\n    if(c1[1] != 1) {\r\n        c1[1] = 1;\r\n    }\r\n\r\n    for(int i = 1 ; i <= 2 * n ; ++i) {\r\n        if(c1[i] == 0 && c2[i] == 0) {\r\n           v[++number] = i;\r\n        }\r\n    }\r\n\r\n    nr = min(n - m , n - k);\r\n\r\n    bkt(1);\r\n\r\n    g << sol;\r\n\r\n    return 0;\r\n}\r\n\r\n\r\nvoid bkt(int poz) {\r\n    if(poz > nr) {\r\n        if(verif()) {\r\n            ++sol;\r\n        }\r\n        return;\r\n    }\r\n\r\n    for(int i = 1 ; i <= number ; ++i) {\r\n        if(aux[v[i]] == 0) {\r\n            aux[v[i]] = 1;\r\n            bkt(poz + 1);\r\n            aux[v[i]] = 0;\r\n        }\r\n    }\r\n}\r\n\r\nbool verif() {\r\n    int nr1 = 0 , nr2 = 0;\r\n    if(m < k) {\r\n        for(int i = 1 ; i <= 2 * n ; ++i) {\r\n            if(c2[i] == 1 || aux[i] == 1) {\r\n                t2[++nr2] = i;\r\n            }\r\n            if(c1[i] == 1 || aux[i] == 0) {\r\n                t1[++nr1] = i;\r\n            }\r\n        }\r\n\r\n        sort(t2 + 1 , t2 + n + 1);\r\n        sort(t1 + 1 , t1 + n + 1);\r\n\r\n        for(int i = 1  ; i <= n ; ++i) {\r\n            if(t1[i] > t2[i]) {\r\n                return 0;\r\n            }\r\n        }\r\n    }\r\n\r\n    else {\r\n        for(int i = 1 ; i <= 2 * n ; ++i) {\r\n            if(c2[i] == 1 || aux[i] == 0) {\r\n                t2[++nr2] = i;\r\n            }\r\n            if(c1[i] == 1 || aux[i] == 1) {\r\n                t1[++nr1] = i;\r\n            }\r\n        }\r\n\r\n        sort(t2 + 1 , t2 + n + 1);\r\n        sort(t1 + 1 , t1 + n + 1);\r\n\r\n        for(int i = 1  ; i <= n ; ++i) {\r\n            if(t1[i] > t2[i]) {\r\n                return 0;\r\n            }\r\n        }\r\n    }\r\n\r\n    return 1;\r\n}\r\n'
p3
tp4
stp5
.