This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
#include <vector>
#include <map>
#include <string>
#include <algorithm>
#include <unistd.h>
#include <fstream>
using namespace std;
string password;
int query( string s );
string guess( int n, int s ){
    string chars = "", result = "";
    for( int i = 0; i < s; ++i )
        chars += char( 'a' + i );
    
    int tries = 0, last_match = 0;
    while( last_match != n ){
        ++tries;
        
        string temp;
        for( int i = 0; i < s; ++i ){
            temp = chars[i] + result;
            int curr_match = query( temp );
            if( curr_match > last_match ){
                cout << "new match " << temp << endl;
                result = temp;
                last_match = curr_match;
                break;
            }
            temp = result + chars[i];
            curr_match = query( temp );
            if( curr_match > last_match ){
                cout << "new match " << temp << endl;
                result = temp;
                last_match = curr_match;
                break;
            }
        }
        if( last_match == n )
            break;
    }
    
    return result;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |