CSES - E4590 2016 1 - Results
Submission details
Task:Edit distance
Sender:eax511
Submission time:2016-09-17 15:56:56 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#1UNKNOWN--details
#2UNKNOWN--details
#3UNKNOWN--details
#4UNKNOWN--details
#5UNKNOWN--details
#6UNKNOWN--details
#7UNKNOWN--details
#8UNKNOWN--details
#9UNKNOWN--details
#10UNKNOWN--details
#11UNKNOWN--details
#12UNKNOWN--details
#13UNKNOWN--details
#14UNKNOWN--details
#15UNKNOWN--details
#16UNKNOWN--details
#17UNKNOWN--details
#18UNKNOWN--details
#19UNKNOWN--details

Code

#include <iostream>
#include <queue>
#include <set>
#include <string>
#include <tuple>
using namespace std;
int main(){
  priority_queue<tuple<int,unsigned,string>> eq;
  set<string> v;
  string q;
  int d;
  unsigned l;
  string a;
  cin>>a>>q;
  while(l<q.size()&&l<a.size()&&a[l]==q[l])l++;
  eq.emplace(0,l,a);
  while(true){
    tie(d,l,a) = eq.top();
    d = -d;
    eq.pop();
    if(v.count(a))continue;
    v.insert(a);
    while(l<q.size()&&l<a.size()&&a[l]==q[l])l++;
    if(l==q.size()){
      if(a.size()>l){
        eq.emplace(-(d+a.size()-l),l,q);
        continue;
      }
      break;
    }
    if(a.size()==l){
      eq.emplace(-(d+q.size()-a.size()),q.size(),q);
      continue;
    }
    eq.emplace(-d-1,l+1,a.substr(0,l)+q[l]+a.substr(l));
    a[l]=q[l];
    eq.emplace(-d-1,l+1,a);
    auto k = a.find(q[l],l+1);
    if(k==string::npos)continue;
    eq.emplace(-(d+k-l),l+1,a.substr(0,l)+a.substr(k));
  }
  cout<<d<<'\n';
}

Test details

Test 1

Verdict: UNKNOWN

input
NEABJPJOI
RFMQRJKJKIA

correct output
8

user output
(not available)

Test 2

Verdict: UNKNOWN

input
TWXFUABGBNLTBFNSUVQW
GPNJILFXJUIZPLTVUIB

correct output
19

user output
(not available)

Test 3

Verdict: UNKNOWN

input
HSMOWJXKGRWSMD
JMRTLLNPXKKXZC

correct output
14

user output
(not available)

Test 4

Verdict: UNKNOWN

input
NGPYCNPO
UQPXWVLGHC

correct output
9

user output
(not available)

Test 5

Verdict: UNKNOWN

input
SQTCKWAMFJEBV
IUWGGNJOMQFP

correct output
13

user output
(not available)

Test 6

Verdict: UNKNOWN

input
VDREWLLHMEVGFGBXJJOSSLHNJBOTRK...

correct output
4047

user output
(not available)

Test 7

Verdict: UNKNOWN

input
EIIUUQXSAFMTRSEZSFYNSAGHUWTSGY...

correct output
3769

user output
(not available)

Test 8

Verdict: UNKNOWN

input
HVOXUVAZYFBKEWQXVGJMYXCCXBWRNW...

correct output
3806

user output
(not available)

Test 9

Verdict: UNKNOWN

input
AWGASQANDZQTVKXQDKWNADQDBXKCOK...

correct output
4069

user output
(not available)

Test 10

Verdict: UNKNOWN

input
WXAAJJALZRLGLSXDPUPURULYINBFGX...

correct output
3874

user output
(not available)

Test 11

Verdict: UNKNOWN

input
A
A

correct output
0

user output
(not available)

Test 12

Verdict: UNKNOWN

input
A
B

correct output
1

user output
(not available)

Test 13

Verdict: UNKNOWN

input
AA
A

correct output
1

user output
(not available)

Test 14

Verdict: UNKNOWN

input
A
AA

correct output
1

user output
(not available)

Test 15

Verdict: UNKNOWN

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
5000

user output
(not available)

Test 16

Verdict: UNKNOWN

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
0

user output
(not available)

Test 17

Verdict: UNKNOWN

input
B
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
5000

user output
(not available)

Test 18

Verdict: UNKNOWN

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
5000

user output
(not available)

Test 19

Verdict: UNKNOWN

input
KITTEN
SITTING

correct output
3

user output
(not available)