(I2
I118
I6
(dp0
Vtable.%l
p1
(Vtable.cpp
p2
S'#include <iostream>\r\n#include <algorithm>\r\n#include <vector>\r\nusing namespace std;\r\n\r\nbool used[76];\r\nint n, ka, kb, a[36], b[36];\r\nvector <int> line1;\r\nvector <int> line2;\r\nvector <int> c;\r\nvector <int> sortedc;\r\n\r\nint main(){\r\n    \r\n    cin >> n >> ka;\r\n    for(int i = 0;  i < ka; i ++)\r\n    {\r\n        cin >> a[i];\r\n        used[a[i]] = 1;\r\n    }\r\n    cin >> kb;\r\n    for(int i = 0;  i < kb; i ++)\r\n    {\r\n        cin >> b[i];\r\n        used[b[i]] = 1;\r\n    }\r\n    \r\n    for(int i = 1; i <= 2*n; i ++)\r\n        if(used[i] == 0)\r\n        {\r\n            c.push_back(i);\r\n            sortedc.push_back(i);\r\n        }\r\n        \r\n    long long int ans = 0;\r\n    \r\n    do\r\n    {\r\n        line1.clear(); line2.clear();\r\n        for(int i = 0;  i < ka; i ++) line1.push_back(a[i]);\r\n        for(int i = 0;  i < kb; i ++) line2.push_back(b[i]);\r\n        sort(line1.begin(), line1.end());\r\n        sort(line2.begin(), line2.end());\r\n        \r\n        for(int i = 0; i < c.size(); i ++)\r\n        {\r\n            if(line1.size() < n) line1.push_back(c[i]);\r\n            else line2.push_back(c[i]);            \r\n        }\r\n\r\n        vector<int> stop1; vector<int> stop2;\r\n        \r\n        for(int i = 0; i < line1.size(); i ++) stop1.push_back(line1[i]);\r\n        for(int i = 0; i < line2.size(); i ++) stop2.push_back(line2[i]);\r\n        \r\n        do\r\n        { \r\n            bool check = true;\r\n            for(int i = 0; i < line1.size()-1; i++)\r\n                if(line1[i] > line1[i+1]) { check = false; break;}\r\n                \r\n            if (check == true)\r\n            {\r\n                do\r\n                {\r\n                    next_permutation(line2.begin(), line2.end());\r\n                    \r\n                    bool check2 = true;\r\n                    for(int i = 0; i < line2.size()-1; i++)\r\n                        if(line2[i] > line2[i+1]) {check2 = false; break;}\r\n                    \r\n                    if(check2 == true)\r\n                    {\r\n                        bool check3 = true;\r\n                        for(int i = 0; i < line1.size(); i ++)\r\n                            if(line1[i] > line2[i]) {check3 = false; break;}\r\n                        if(check3 == true)\r\n                        {\r\n                            ans ++;\r\n                            /*cout << "------------------------------------" << endl;\r\n                            for(int i = 0; i < line1.size(); i ++) cout << line1[i] << " ";\r\n                            cout << endl;\r\n                            for(int i = 0; i < line2.size(); i ++) cout << line2[i] << " ";\r\n                            cout << endl;\r\n                            cout << "YAY" << endl;*/\r\n                        }\r\n                    }\r\n                } while(line2 != stop2);\r\n            }\r\n            \r\n            next_permutation(line1.begin(), line1.end());\r\n        \r\n        } while(line1 != stop1);\r\n        next_permutation(c.begin(), c.end());\r\n    } while(c != sortedc);\r\n    \r\n    cout << ans/2 << endl;\r\n\r\nreturn 0;\r\n}'
p3
tp4
stp5
.