Submission #282359

# Submission time Handle Problem Language Result Execution time Memory
282359 2020-08-24T10:49:49 Z GREGOIRELC Arranging Shoes (IOI19_shoes) C++14
10 / 100
53 ms 67704 KB
#include "shoes.h"
#include <cmath>
#include <iostream>
#include <queue>

using namespace std;

const int MAX_SHOES = 1e5 + 1;

int lstType[MAX_SHOES];
queue<int> enCours[MAX_SHOES];

long long count_swaps(vector<int> s)
{
	int N = (int)s.size();
	long long result = 0;
	for(int curShoes = 0; curShoes < N; curShoes++)
	{
		int taille = abs(s[curShoes]);
		int tp = abs(s[curShoes]) / s[curShoes];
		if(enCours[taille].empty())
		{
			enCours[taille].push(curShoes);
			lstType[taille] = tp;
		}
		else
		{
			if(lstType[taille] == tp)
			{
				enCours[taille].push(curShoes);
			}
			else
			{
				result += curShoes - enCours[taille].front();
				enCours[taille].pop();
				if(tp == 1)
				{
					result--;
				}
			}
		}
	}
	return result;
}
# Verdict Execution time Memory Grader output
1 Correct 50 ms 67576 KB Output is correct
2 Correct 50 ms 67576 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 50 ms 67576 KB Output is correct
2 Correct 50 ms 67576 KB Output is correct
3 Correct 50 ms 67704 KB Output is correct
4 Correct 50 ms 67576 KB Output is correct
5 Correct 50 ms 67576 KB Output is correct
6 Correct 50 ms 67704 KB Output is correct
7 Incorrect 51 ms 67584 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 50 ms 67576 KB Output is correct
2 Correct 50 ms 67576 KB Output is correct
3 Incorrect 52 ms 67576 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 53 ms 67576 KB Output is correct
2 Incorrect 49 ms 67576 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 50 ms 67576 KB Output is correct
2 Correct 50 ms 67576 KB Output is correct
3 Correct 50 ms 67704 KB Output is correct
4 Correct 50 ms 67576 KB Output is correct
5 Correct 50 ms 67576 KB Output is correct
6 Correct 50 ms 67704 KB Output is correct
7 Incorrect 51 ms 67584 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 50 ms 67576 KB Output is correct
2 Correct 50 ms 67576 KB Output is correct
3 Correct 50 ms 67704 KB Output is correct
4 Correct 50 ms 67576 KB Output is correct
5 Correct 50 ms 67576 KB Output is correct
6 Correct 50 ms 67704 KB Output is correct
7 Incorrect 51 ms 67584 KB Output isn't correct
8 Halted 0 ms 0 KB -