(I3
I120
I8
(dp0
Vswap.%l
p1
(Vswap PI.cpp
p2
S'#include<iostream>\r\n#include<algorithm>\r\nusing namespace std;\r\nbool used[200];\r\n\r\nstruct svap{\r\n    long long a,b;\r\n};\r\nsvap re6eniq[10000];\r\n\r\nbool gotovoLiE=false;\r\n\r\nlong long n,masiv[10000],minn,index,brSwap=0;\r\nsvap stupki[200];\r\n\r\nvoid re6enie(long long koqStupka,long long brSwap){\r\n    long long br;\r\n    bool imaLiOste=false;\r\n    if(gotovoLiE){\r\n        return;\r\n    }\r\n    for(br=0;br<n;br++){\r\n        if(br!=masiv[br]){\r\n            imaLiOste=true;\r\n            br=n;\r\n        }\r\n    }\r\n    if(!imaLiOste){\r\n        if(!gotovoLiE){\r\n            cout<<brSwap<<"\\n";\r\n            for(br=0;br<brSwap;br++){\r\n                cout<<re6eniq[br].a<<" "<<re6eniq[br].b<<"\\n";\r\n            }\r\n        }\r\n        gotovoLiE=true;\r\n        return;\r\n    }\r\n    for(br=1;br<=n;br++){\r\n        if(br!=koqStupka){\r\n            //cout<<"asdf";\r\n            //cout<<br<<" "<<koqStupka<<" "<<masiv[stupki[br].a]<<" "<<stupki[br].a<<" "<<masiv[stupki[br].b]<<" "<<stupki[br].b<<endl;\r\n            if(masiv[stupki[br].a]!=stupki[br].a and masiv[stupki[br].b]!=stupki[br].b){\r\n                //cout<<"TUK?";\r\n                re6eniq[brSwap].a=stupki[br].a;\r\n                re6eniq[brSwap].b=stupki[br].b;\r\n                swap(masiv[stupki[br].a],masiv[stupki[br].b]);\r\n                re6enie(br,brSwap+1);\r\n                if(gotovoLiE){\r\n                    return;\r\n                }\r\n            }\r\n            if(gotovoLiE){\r\n                return;\r\n            }\r\n        }\r\n        if(gotovoLiE){\r\n            return;\r\n        }\r\n    }\r\n    if(gotovoLiE){\r\n        return;\r\n    }\r\n}\r\n\r\nint main(){\r\n    long long posoka;\r\n    cin>>n;\r\n    cin>>masiv[1];\r\n    long long br;\r\n    for(br=2;br<=n;br++){\r\n        cin>>masiv[br];\r\n        stupki[br-1].a=br;\r\n        stupki[br-1].b=br-1;\r\n    }\r\n    if(n==1){\r\n        cout<<"0\\n";\r\n        return 0;\r\n    }\r\n    for(br=1;br<=n;br++){\r\n        re6enie(br,0);\r\n    }\r\n    return 0;\r\n}\r\n'
p3
tp4
stp5
.