Submission #532969


Source Code Expand

#define _CRT_SECURE_NO_WARNINGS
// #define _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
// #define int ll
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef pair<int,int> pii;
#define all(c) begin(c), end(c)
#define range(i,a,b) for(ll i=a; i<ll(b); i++)
#define rep(i,b) range(i,0,b)
#define rangei(i,a,b) for(ll a=a;i<=ll(b);i++)
#define repi(i,b) rangei(i,1,b)
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define mt make_tuple
template<class T> ostream & operator << (ostream &os, vector<T> const &);
template<int n, class...T>
typename enable_if<(n>=sizeof...(T))>::type
_ot(ostream &, tuple<T...> const &){}
template<int n, class...T>
typename enable_if<(n< sizeof...(T))>::type
_ot(ostream &os, tuple<T...> const &t){
    os << (n==0?"":" ") << get<n>(t); _ot<n+1>(os, t);
}
template<class...T>
ostream & operator << (ostream &os, tuple<T...> const &t){
    _ot<0>(os, t); return os;
}
template<class T, class U>
ostream & operator<<(ostream &os, pair<T,U> const &p){
    return os << "(" << p.first << ", " << p.second << ") ";
}
template<class T>
ostream & operator<<(ostream &os, vector<T> const &v){
    rep(i,v.size()) os << v[i] << (i+1==(int)v.size()?"":" "); return os;
}
#ifdef DEBUG
#define dump(...) (cerr << #__VA_ARGS__ << " = " << mt(__VA_ARGS__) \
                   << " [" << __LINE__ << "]" << endl)
#else
#define dump(...)
#endif
void fastios(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    // #define endl '\n'
}
template<class T>
size_t uniq(vector<T> &v){
    sort(v.begin(), v.end());
    v.erase(unique(v.begin(), v.end()), v.end());
    return v.size();
}
template<class T>
size_t uniq(T *l, size_t n){
    sort(l,l+n);
    return unique(l,l+n) - l;
}
#define mems(arr,val) memset(arr,val,sizeof(arr));
int const mod = 1000000007;
int const inf = numeric_limits<int>::max()/8;

vector<string> splitAll(string s, string t) {
    vector<string> v;
    for (int p = 0; (p = s.find(t)) != s.npos; ) {
        v.push_back(s.substr(0, p));
        s = s.substr(p + t.size());
    }
    v.push_back(s);
    return v;
}
vector<string> split(string s, string t) {
    vector<string> v;
    int p = s.find(t);
    if (p != s.npos) {
        v.push_back(s.substr(0, p));
        s = s.substr(p + t.size());
    }
    v.push_back(s);
    return v;
}
string replaceAll(string s, string f, string t) {
    string r;
    for (int p = 0; (p = s.find(f)) != s.npos; ) {
        r += s.substr(0, p) + t;
        s = s.substr(p + f.size());
    }
    return r + s;
}
string replace(string s, string f, string t) {
    string r;
    int p = s.find(f);
    if (p != s.npos) {
        r += s.substr(0, p) + t;
        s = s.substr(p + f.size());
    }
    return r + s;
}

int solve(string s){
    int ans = 0;
    rep(i,100000){
        string t;
        if(i&1){
            t = replace(s, "tokyo", "@");
        } else {
            t = replace(s, "kyoto", "@");
        }
        if(t != s){
            s = t;
            ans++;
        }
        if(s.find("tokyo") == string::npos && t.find("kyoto") == string::npos) break;
    }
    return ans;
}

signed main(){
    int t;
    cin >> t;
    rep(i,t){
        string s;
        cin >> s;
        cout << solve(s) << endl;
    }
}

Submission Info

Submission Time
Task A - 東京都
User tubo28
Language C++11 (GCC 4.9.2)
Score 0
Code Size 3399 Byte
Status WA
Exec Time 31 ms
Memory 920 KB

Judge Result

Set Name All
Score / Max Score 0 / 100
Status
WA × 3
Set Name Test Cases
All 10_random_to_kyo.txt, 20_noised_tokyoto.txt, 99_teuchi.txt
Case Name Status Exec Time Memory
10_random_to_kyo.txt WA 31 ms 852 KB
20_noised_tokyoto.txt WA 30 ms 920 KB
99_teuchi.txt WA 29 ms 916 KB