提供SPJ
查看原帖
提供SPJ
295864
eigw22h619楼主2022/9/21 11:34

已经通过测试。

#include "testlib.h"
#include <bits/stdc++.h>

using namespace std;

int main(int argc, char **argv) {
    registerTestlibCmd(argc, argv);
    string s1 = inf.readString(), s2 = inf.readString();
    int out_len = ouf.readInt(1, min(s1.length(), s2.length()));
    int pos1 = ouf.readInt(0, s1.length() - out_len), pos2 = ouf.readInt(0, s2.length() - out_len);
    bool succ = false;
    s1 = s1.substr(pos1, out_len), s2 = s2.substr(pos2, out_len);
    for(int i = 0; i < s1.length(); i++){
        rotate(s1.begin(), s1.begin() + 1, s1.end());
        if(s1 == s2) {succ = true; break;}
    }
    reverse(s1.begin(), s1.end());
    for(int i = 0; i < s1.length(); i++){
        rotate(s1.begin(), s1.begin() + 1, s1.end());
        if(s1 == s2) {succ = true; break;}
    }
    if(!succ) quitf(_wa, "Invalid!");
    int ans_len = ans.readInt();
    if(out_len > ans_len) quitf(_fail, "Too long@_@???");
    else if(out_len == ans_len) quitf(_ok, "Ohhhhhh!!");
    else if(out_len >= (ans_len + 1) / 2) quitp(0.2, "Good!!");
    else quitf(_wa, "Too short!!");
    return 0;
}
2022/9/21 11:34
加载中...