Submission #243091

# Submission time Handle Problem Language Result Execution time Memory
243091 2020-06-30T09:53:43 Z idtj Arranging Shoes (IOI19_shoes) C++14
10 / 100
5 ms 384 KB
#include "shoes.h"

#include <deque>
#include <cmath>
using namespace std; 

long long count_swaps(vector<int> S) {
  	int n = S.size() / 2;
    vector<deque<pair<int, int>>> a(n + 1); // pos / is_left
    vector<pair<int, int>> in(n * 2); // size / is_left
 
    for (int i = 0; i < n * 2; ++i) {
        int now = S[i];
        if (now < 0) {
            in[i].second = 1;
            now = -now;
        }
        in[i].first = now;
    }
 
    long long ans = 0;
 
    for (int i = 0; i < n * 2; ++i) {
        auto &t = a[abs(in[i].first)];
        if (t.empty() || t.front().second == in[i].second) {
            t.push_back(make_pair(i, in[i].second));
        }
        else {
            if (t.front().second) {
                ans += i - t.front().first - 1;
            }
            else
                ans += i - t.front().first;
            t.pop_front();
        }
    }
 
	return ans;
}
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 4 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 5 ms 256 KB Output is correct
7 Incorrect 5 ms 256 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Incorrect 4 ms 384 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Incorrect 4 ms 256 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 4 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 5 ms 256 KB Output is correct
7 Incorrect 5 ms 256 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 4 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 5 ms 256 KB Output is correct
7 Incorrect 5 ms 256 KB Output isn't correct
8 Halted 0 ms 0 KB -