Submission #320712

# Submission time Handle Problem Language Result Execution time Memory
320712 2020-11-09T15:18:47 Z NicolaAbusaad2014 Combo (IOI18_combo) C++14
0 / 100
1 ms 200 KB
/**
 * Prof.Nicola
**/
#include "combo.h"
#include <bits/stdc++.h>
using namespace std;
vector<string>v;
long n;
string ans;
void solve(long x)
{
    string t;
    long z;
    if(x<n-1){
        t=ans;
        t+=v[0];
        t+=v[0];
        t+=ans;
        t+=v[0];
        t+=v[1];
        t+=ans;
        t+=v[0];
        t+=v[2];
        t+=ans;
        t+=v[1];
        z=press(t);
        z-=x;
        ans+=v[2-z];
        solve(x+1);
    }
    else{
        t=ans+v[0];
        if(press(t)-x){
            ans+=v[0];
        }
        else{
            t=ans+v[1];
            if(press(t)-x){
                ans+=v[1];
            }
            else{
                ans+=v[2];
            }
        }
        return;
    }
}
void rem(string s)
{
    for(long i=0;i<4;i++){
        if(v[i]==s){
            v.erase(v.begin()+i);
            return;
        }
    }
}
std::string guess_sequence(int N) {
    n=N;
    v.push_back("A");
    v.push_back("B");
    v.push_back("X");
    v.push_back("Y");
    if(N==1){
        string s="A";
        if(press(s)){
            return s;
        }
        s="B";
        if(press(s)){
            return s;
        }
        s="X";
        if(press(s)){
            return s;
        }
        s="Y";
        return s;
    }
    else{
        string s="AB";
        long x;
        x=press(s);
        if(x==1){
            s="A";
            if(press(s)){
                ans+="A";
            }
            else{
                ans+="B";
            }
        }
        else{
            s="X";
            if(press(s)){
                ans+="X";
            }
            else{
                ans+="Y";
            }
        }
        rem(ans);
        solve(1);
    }
    return ans;
}
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 200 KB Wrong Answer: wrong guess.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 200 KB Output is correct
2 Correct 1 ms 200 KB Output is correct
3 Correct 1 ms 200 KB Output is correct
4 Correct 1 ms 200 KB Output is correct
5 Incorrect 1 ms 200 KB Wrong Answer: wrong guess.
6 Halted 0 ms 0 KB -