Submission #17508555


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
string str,t="atcoder";
vector<int>v[26];
int main()
{
    ios::sync_with_stdio(0);
    int _;
    cin>>_;
    while(_--)
    {
        cin>>str;
        if(str>t){cout<<0<<endl;continue;}
        int n=str.size(),ans=2e9,now=0;
        t[7]=0;
        for(int i=0;i<8;i++)
        {
            for(int j=i;j<n;j++)
                if(str[j]>t[i])ans=min(ans,now+j-i);
            bool flag=0;
            for(int j=i;j<n;j++)
                if(str[j]==t[i])
                {
                    now+=j-i;
                    for(int k=i+1;k<=j;k++)str[k]=str[k-1];
                    str[i]=t[i];
                    flag=1;
                    break;
                }
            if(!flag)break;
        }
        if(ans>=1e9)cout<<-1<<endl;
        else cout<<ans<<endl;
    }
    return 0;
}

Submission Info

Submission Time
Task A - atcoder < S
User AzusaCat
Language C++ (GCC 9.2.1)
Score 300
Code Size 880 Byte
Status AC
Exec Time 3 ms
Memory 3572 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 1
AC × 2
Set Name Test Cases
Sample 00-sample-001.txt
All 00-sample-001.txt, 01-001.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 3 ms 3544 KiB
01-001.txt AC 3 ms 3572 KiB