Submission #709093

#TimeUsernameProblemLanguageResultExecution timeMemory
709093kxdPassword (RMI18_password)C++17
50 / 100
540 ms452 KiB
#include <bits/stdc++.h>
//#define int long long
#define ll unsigned long long
#define pb push_back
#define p_q priority_queue
#define m_p make_pair
#define pii pair<int,int>
#define endl '\n'
#define INIT ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define FOR(i, a, b) for(int i = a; i <= b; i++)
#define forn(i, n) for (int i = 0; i < n; i++)
#define forn1(i, n) for (int i = 1; i <= n; i++)
#define all(x) x.begin(),x.end()
#define ft first
#define sd second
 
using namespace std;
const int N = 1e5+5;
const int INF = 1e18;
const int MOD = 1e9+7;
 
using namespace std;
 
int tot[26];
int ans[5000];
int query(string str); 
string guess(int n, int s) {
	forn(i,s) {
		string S (n,char('a'+i));
		tot[i] = query(S);
	}
	forn(i,s) {
		for(int j = 1; j <= tot[i]; j++) {
			int ret = 0;
			forn(k,s) {
				//if(k==i) continue;
				string S (j,'a'+i);
				string S2 (n-j,'a'+k);
				int t = query(S+S2)-j;
				//cout << t << endl;
				ret += t;
			}
			//cout << "char at pos " << ret << " is " << char('a'+i) << endl;
			ans[ret] = i;
		}
	}
	string S;
	for(int i = n-1; i >= 0; i--) {
		S = S + (char)(ans[i]+'a');
	}
	return S;
}

Compilation message (stderr)

password.cpp:19:17: warning: overflow in conversion from 'double' to 'int' changes value from '1.0e+18' to '2147483647' [-Woverflow]
   19 | const int INF = 1e18;
      |                 ^~~~
#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...