Submission #97648

#TimeUsernameProblemLanguageResultExecution timeMemory
97648arnold518Combo (IOI18_combo)C++14
5 / 100
1 ms272 KiB
#include <bits/stdc++.h>
#include "combo.h"
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

string ans;
char start;

char str[4]={'A', 'B', 'X', 'Y'};

string guess_sequence(int n)
{
    int i, j;
    string t;

    if(press("A")==1) start='A';
    else if(press("B")==1) start='B';
    else if(press("X")==1) start='X';
    else start='Y';

    ans+=start;

    for(i=2; i<n; i++)
    {
        if(start=='A') t=ans+"BB"+ans+"BX"+ans+"BY"+ans+"X";
        else if(start=='B') t=ans+"XX"+ans+"XY"+ans+"XA"+ans+"Y";
        else if(start=='X') t=ans+"YY"+ans+"YA"+ans+"YB"+ans+"A";
        else if(start=='Y') t=ans+"AA"+ans+"AB"+ans+"AX"+ans+"B";

        int res=press(t);

        //cout<<i<<" "<<t<<" "<<res<<" "<<ans<<endl;

        res-=i-1;
        if(start=='A')
        {
            if(res==0) ans+='Y';
            else if(res==1) ans+='X';
            else if(res==2) ans+='B';
        }
        else if(start=='B')
        {
            if(res==0) ans+='A';
            else if(res==1) ans+='Y';
            else if(res==2) ans+='X';
        }
        else if(start=='X')
        {
            if(res==0) ans+='B';
            else if(res==1) ans+='A';
            else if(res==2) ans+='Y';
        }
        else if(start=='Y')
        {
            if(res==0) ans+='X';
            else if(res==1) ans+='B';
            else if(res==2) ans+='A';
        }
    }

    if(press(ans+"A")==n) ans+='A';
    else if(press(ans+"B")==n) ans+='B';
    else if(press(ans+"X")==n) ans+='X';
    else ans+='Y';

    //cout<<ans<<endl;

    return ans;
}

Compilation message (stderr)

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:16:12: warning: unused variable 'j' [-Wunused-variable]
   16 |     int i, j;
      |            ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...