Submission #229334

# Submission time Handle Problem Language Result Execution time Memory
229334 2020-05-04T08:43:52 Z osaaateiasavtnl Gondola (IOI14_gondola) C++14
25 / 100
43 ms 4728 KB
#include<bits/stdc++.h>
using namespace std;

#define ii pair <int, int>
#define app push_back
#define all(a) a.begin(), a.end()
#define bp __builtin_popcountll
#define ll long long
#define mp make_pair
#define f first
#define s second
#define Time (double)clock()/CLOCKS_PER_SEC

#include "gondola.h"

signed valid(signed n, signed a[])
{
    set <int> ms;
    for (int i = 0; i < n; ++i)
        ms.insert(a[i]);
    if (ms.size() < n)
        return 0;

    int pos = -1;
    for (int i = 0; i < n; ++i) {
        if (a[i] <= n) {
            pos = i;
            break;
        }
    }   

    if (pos == -1) 
        return 1;
    else {
        for (int sh = 0; sh < n; ++sh) {
            int i = (pos + sh) % n;
            int val = a[pos] + sh;
            if (val > n)
                val -= n;
            if (a[i] <= n && a[i] != val)
                return 0;
        }
        return 1;
    }   

}

//----------------------

signed replacement(signed n, signed a[], signed ans[])
{

    int pos = -1;
    for (int i = 0; i < n; ++i) {
        if (a[i] <= n) {
            pos = i;
            break;
        }
    }   
    
    if (pos == -1)
        pos = 0;

    vector <ii> ar;
    for (int sh = 0; sh < n; ++sh) {
        int i = (pos + sh) % n;
        int val = a[pos] + sh;
        if (val > n)
            val -= n;
        if (a[i] > n) {
            ar.app(mp(a[i], val));
        }   
    }
    sort(all(ar));
    int ptr = 0;
    int xp = n + 1;
    for (auto e : ar) {
        int cur = e.s;
        while (xp <= e.f) {
            //cout << cur << "->" << xp << endl;
            ans[ptr++] = cur;
            cur = xp++;
        }                           
    }   
    return ptr;
}

//----------------------

signed countReplacement(signed n, signed inputSeq[])
{
  return -3;
}

Compilation message

gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:21:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (ms.size() < n)
         ~~~~~~~~~~^~~
# 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 5 ms 384 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 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 5 ms 256 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 16 ms 2304 KB Output is correct
7 Correct 35 ms 3712 KB Output is correct
8 Correct 27 ms 3968 KB Output is correct
9 Correct 12 ms 1408 KB Output is correct
10 Correct 32 ms 4600 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Correct 4 ms 256 KB Output is correct
3 Correct 4 ms 256 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 16 ms 2176 KB Output is correct
7 Correct 35 ms 3712 KB Output is correct
8 Correct 27 ms 3968 KB Output is correct
9 Correct 11 ms 1536 KB Output is correct
10 Correct 32 ms 4608 KB Output is correct
11 Correct 4 ms 256 KB Output is correct
12 Correct 4 ms 256 KB Output is correct
13 Correct 22 ms 2084 KB Output is correct
14 Correct 4 ms 256 KB Output is correct
15 Correct 43 ms 4728 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Correct 4 ms 256 KB Output is correct
3 Correct 5 ms 256 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 Correct 4 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 4 ms 256 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Incorrect 5 ms 384 KB Integer 4584 violates the range [1, 72]
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 4 ms 384 KB Output is correct
3 Correct 4 ms 384 KB Output is correct
4 Correct 4 ms 384 KB Output is correct
5 Correct 4 ms 256 KB Output is correct
6 Correct 5 ms 256 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Incorrect 5 ms 384 KB Integer 4584 violates the range [1, 72]
9 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 5 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 5 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 5 ms 256 KB Integer -3 violates the range [0, 1000000008]
2 Halted 0 ms 0 KB -