9061 2024. 02. 13 14:19:01 Qkrisi 2016. április cpp17 Időlimit túllépés a(z) 2. teszteseten 2.099s 1700 KiB
#include <bits/stdc++.h>
using namespace std;

using ll = long long;

const pair<int, int> pairs[4] = {{0, 1}, {1, 0}, {0, -1}, {-1, 0}};

void run(string* moves, size_t N, set<pair<ll, ll>>* endings)
{
	int direction = 1;
	ll X = 0;
	ll Y = 0;
	for(size_t i = 0;i<N;i++)
	{
		switch(moves->at(i))
		{
			case 'F':
				X += pairs[direction].first;
				Y += pairs[direction].second;
				break;
			case 'R':
				if(++direction == 5)
					direction = 1;
				break;
			case 'L':
				if(--direction == 0)
					direction = 4;
				break;
		}
	}
	endings->insert({X, Y});
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);

	string moves;
	getline(cin, moves);
	size_t N = moves.size();

	set<pair<ll, ll>> endings;

	
	for(size_t i = 0;i<N;i++)
	{
		char original = moves[i];
		pair<char, char> PossibleMoves;
		switch(original)
		{
			case 'F':
				PossibleMoves = {'L', 'R'};
				break;
			case 'L':
				PossibleMoves = {'F', 'R'};
				break;
			case 'R':
				PossibleMoves = {'L', 'F'};
				break;
		}
		moves[i] = PossibleMoves.first;
		run(&moves, N, &endings);
		moves[i] = PossibleMoves.second;
		run(&moves, N, &endings);
		moves[i] = original;
	}

	cout << endings.size();

	return 0;
}
1 - Elfogadva
Memória: 1700KiB
Idő: 3ms

Program kimenete:
3
Elvárt kimenet:
3
Ellenőrző kimenet:
ok 1 number(s): "3"

2 - Időlimit túllépés
Memória: 1392KiB
Idő: 2.099s

Program kimenete:
Elvárt kimenet:
34389
Ellenőrző kimenet:

3 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

4 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

5 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

6 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

7 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

8 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

9 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

10 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

11 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

12 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

13 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

14 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

15 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

16 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

17 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

18 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

19 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

20 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

21 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

22 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

23 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

24 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

25 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet:

26 - Nem futott
Memória: 0KiB
Idő: 0s

Program kimenete:
Elvárt kimenet:
Ellenőrző kimenet: