[Offer收割]编程练习赛19 register

Ended

Participants:405

Verdict:Time Limit Exceeded
Score:80 / 100
Submitted:2017-07-23 14:06:21

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include<bits/stdc++.h>
#define pb push_back
typedef long long ll;
using namespace std;
typedef pair<int, int> pii;
const int maxn = 5e4 + 10;
map<string, int> ma;
string tar;
set<string> in;
int dfs(string s, string p) {
    //cout << s << " " << p << endl;
    if(in.count(s)) {
            //cout << s << endl;
            return INT_MAX;
    }
    if(s == tar) return 0;
    if(ma.count(s)) return ma[s];
    in.insert(s);
    set<string> se;
    //se.insert(p);
    se.insert(s);
    //int cur = f(t);
    int res = INT_MAX;
    //ma[s] = res;
    string& t = s;
    for (int i = 0; i + 1 < t.size(); i++) {
        string ts = t;
        reverse(ts.begin(), ts.begin() + i);
        reverse(ts.begin() + i, ts.begin() + i + 2);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX