(I3
I119
I7
(dp0
Vtwostr.%l
p1
(Vwer.cpp
p2
S'#include <iostream>\r\n#include <string>\r\n#include <utility>\r\n#include <algorithm>\r\n\r\nusing namespace std;\r\n\r\nstring s1, s2;\r\n\r\npair<string, bool> operator-(const string &a, const string &b)\r\n{\r\n    string a1 = "", b1 = "";\r\n    string c="";\r\n    while(a.size()>b.size()+b1.size())\r\n    {\r\n        b1+=\'0\';\r\n    }\r\n    while(a.size()+a1.size()<b.size())\r\n    {\r\n        a1+=\'0\';\r\n    }\r\n    bool po0 = true;\r\n    if(a1<b1)\r\n    {\r\n        swap(a1, b1);\r\n        po0=false;\r\n    }\r\n\r\n    a1+=a;\r\n    b1+=b;\r\n    c.resize(a1.size());\r\n    for(auto &x:c)\r\n    {\r\n        x=\'0\';\r\n    }\r\n    for(int i = a1.size()-1; i>=0; i--)\r\n    {\r\n        c[i]+=a1[i]-b1[i];\r\n        while(c[i]<\'0\')\r\n        {\r\n            c[i]+=10;\r\n            c[i-1]--;\r\n        }\r\n    }\r\n    return make_pair(c, po0);\r\n}\r\n\r\nbool operator<(pair<string, bool> &s1, pair<string, bool> &s2)\r\n{\r\n    bool kodaret = false;\r\n    if(s1.second>s2.second)\r\n    {\r\n        return false;\r\n    }\r\n    else if(s1.second<s1.second)\r\n    {\r\n        return true;\r\n    }\r\n    else if(s1.second==false)\r\n    {\r\n        kodaret=!kodaret;\r\n    }\r\n    int i = 0;\r\n    while(s1.first[i]==s2.first[i] && i<s1.first.size())\r\n    {\r\n        i++;\r\n    }\r\n    if(s1.first[i]<s2.first[i])\r\n    {\r\n        return !kodaret;\r\n    }\r\n    else\r\n    {\r\n        return kodaret;\r\n    }\r\n}\r\n\r\nint main()\r\n{\r\n    ios::sync_with_stdio(false);\r\n    cin>>s1>>s2;\r\n    int k = 0;\r\n    pair<string, bool> s3;\r\n    s3.second=false;\r\n    s3.first.reserve(3000);\r\n    while(s3.first.size()<3000)\r\n    {\r\n        s3.first+=\'9\';\r\n    }\r\n    do\r\n    {\r\n        k++;\r\n        int z = 0;\r\n        do\r\n        {\r\n            auto raz = s1-s2;\r\n            if(s3<raz)\r\n            {\r\n                s3.first=raz.first;\r\n                s3.second=raz.second;\r\n            }\r\n            rotate(begin(s2), ++begin(s2), end(s2));\r\n            z++;\r\n        }\r\n        while(z<s2.size());\r\n        rotate(begin(s1), ++begin(s1), end(s1));\r\n    }\r\n    while(k<s1.size());\r\n    if(!s3.second)\r\n    {\r\n        cout<<"-";\r\n    }\r\n    cout<<s3.first<<endl;\r\n    return 0;\r\n}\r\n\r\n'
p3
tp4
stp5
.