Submission #1146883

#TimeUsernameProblemLanguageResultExecution timeMemory
1146883emptypringlescanPassword (RMI18_password)C++20
0 / 100
42 ms416 KiB
#include <bits/stdc++.h>
using namespace std;
int query(string s);
vector<int> ans;
pair<int,int> num[26];
void ins(int x, int pos){
	for(int i=pos; i<(int)ans.size(); i++){
		swap(ans[i],x);
	}
	ans.push_back(x);
}
string guess(int n, int s){
	string tst;
	for(int i=0; i<s; i++){
		tst="";
		for(int j=0; j<n; j++){
			tst+=(char)('a'+i);
		}
		num[i]={query(tst),i};
	}
	sort(num,num+s);
	for(int i=0; i<s; i++){
		int chr=num[i].second,nom=num[i].first;
		if(true){
			int aft=0;
			for(int k=0; k<nom; k++){
				aft=0;
				for(int j=0; j<i; j++){
					tst="";
					for(int a=0; a<=k; a++) tst+=(char)('a'+chr);
					for(int a=k+1; a<n; a++) tst+=(char)('a'+num[j].second);
					aft+=query(tst)-k-1;
				}
				ins(chr,(int)ans.size()-aft);
			}
		}
		else{
			
		}
	}
	tst="";
	assert((int)ans.size()==n);
	for(int i=0; i<n; i++) tst+=(char)('a'+ans[i]);
	return tst;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...