Submission #855667

# Submission time Handle Problem Language Result Execution time Memory
855667 2023-10-01T16:12:51 Z franfill Password (RMI18_password) C++17
50 / 100
260 ms 1792 KB
#include<bits/stdc++.h>
using namespace std;

int query(string S);

string cur = "";
int N, S;

void solve(int i, vector < bool > us)
{
	if (cur.size() == N)
		return;
	for (int c = 0; c < S; c++)
		if (us[c])
		{
			string tr = cur.substr(0, i);	
			tr += char('a'+c);
			tr += cur.substr(i, cur.size()-i);
			if (query(tr) == tr.size())
			{
				cur = tr;
				solve(i+1, us);
				solve(i, us);
				return;
			}
			else
				us[c] = false;
		}
}

string guess(int N, int S)
{	
	::N = N;
	::S = S;
	cur = "";
	vector < bool > us(S, true);
	solve(0, us);
	return cur;
}

Compilation message

password.cpp: In function 'void solve(int, std::vector<bool>)':
password.cpp:11:17: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   11 |  if (cur.size() == N)
      |      ~~~~~~~~~~~^~~~
password.cpp:19:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |    if (query(tr) == tr.size())
      |        ~~~~~~~~~~^~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Guessed the password with 144 queries.
2 Correct 1 ms 344 KB Guessed the password with 316 queries.
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Guessed the password with 120 queries.
2 Correct 2 ms 436 KB Guessed the password with 236 queries.
3 Correct 1 ms 436 KB Guessed the password with 126 queries.
4 Correct 2 ms 440 KB Guessed the password with 330 queries.
# Verdict Execution time Memory Grader output
1 Correct 29 ms 1500 KB Guessed the password with 5813 queries.
2 Correct 57 ms 1664 KB Guessed the password with 12053 queries.
3 Correct 74 ms 1388 KB Guessed the password with 15976 queries.
4 Correct 104 ms 1792 KB Guessed the password with 22882 queries.
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Guessed the password with 144 queries.
2 Correct 1 ms 344 KB Guessed the password with 316 queries.
3 Correct 1 ms 344 KB Guessed the password with 120 queries.
4 Correct 2 ms 436 KB Guessed the password with 236 queries.
5 Correct 1 ms 436 KB Guessed the password with 126 queries.
6 Correct 2 ms 440 KB Guessed the password with 330 queries.
7 Correct 29 ms 1500 KB Guessed the password with 5813 queries.
8 Correct 57 ms 1664 KB Guessed the password with 12053 queries.
9 Correct 74 ms 1388 KB Guessed the password with 15976 queries.
10 Correct 104 ms 1792 KB Guessed the password with 22882 queries.
11 Incorrect 260 ms 1280 KB Could not guess the password with 50000 queries.
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Guessed the password with 144 queries.
2 Correct 1 ms 344 KB Guessed the password with 316 queries.
3 Correct 1 ms 344 KB Guessed the password with 120 queries.
4 Correct 2 ms 436 KB Guessed the password with 236 queries.
5 Correct 1 ms 436 KB Guessed the password with 126 queries.
6 Correct 2 ms 440 KB Guessed the password with 330 queries.
7 Correct 29 ms 1500 KB Guessed the password with 5813 queries.
8 Correct 57 ms 1664 KB Guessed the password with 12053 queries.
9 Correct 74 ms 1388 KB Guessed the password with 15976 queries.
10 Correct 104 ms 1792 KB Guessed the password with 22882 queries.
11 Incorrect 260 ms 1280 KB Could not guess the password with 50000 queries.
12 Halted 0 ms 0 KB -