Submission #99668

# Submission time Handle Problem Language Result Execution time Memory
99668 2019-03-06T04:58:07 Z adlet Calvinball championship (CEOI15_teams) C++17
20 / 100
1000 ms 384 KB
#include <bits/stdc++.h>
#include <stdio.h>

#define file(s) if (fopen(s".in", "r")) freopen(s".in", "r", stdin), freopen(s".out", "w", stdout)
#define ios ios_base::sync_with_stdio(0), cin.tie(0)

using namespace std;

typedef long long ll;

const int N = 1e5 + 5;
const int mod = 1e6 + 7;
const int INF = 1e9;
const double PI = acos(-1.0);

vector < int > vec;

int n, a[20], cnt;

void rec(int i, int mx = 1) {
    if (i == n + 1) {
        ++cnt;
        if (cnt >= mod)
            cnt -= mod;
//        for (int i : vec)
//            cout << i << " ";
//        cout << "\n";
        for (int i = 0; i < vec.size(); ++i) {
            if (vec[i] != a[i + 1])
                return;
        }
        cout << cnt;
        exit(0);
    }
    for (int j = 1; j <= min(i, mx + 1); ++j) {
        vec.push_back(j);
        rec(i + 1, max(j, mx));
        vec.pop_back();
    }

}

int main() {
    scanf("%d", &n);
    for (int i = 1; i <= n; ++i) {
        scanf("%d", a + i);
    }
    rec(1);
}
/**
clock() / (double)CLOCKS_PER_SEC < 1.9

*/

Compilation message

teams.cpp: In function 'void rec(int, int)':
teams.cpp:28:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int i = 0; i < vec.size(); ++i) {
                         ~~^~~~~~~~~~~~
teams.cpp: In function 'int main()':
teams.cpp:44:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n);
     ~~~~~^~~~~~~~~~
teams.cpp:46:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", a + i);
         ~~~~~^~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Correct 2 ms 256 KB Output is correct
3 Correct 2 ms 384 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 256 KB Output is correct
3 Correct 2 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 185 ms 356 KB Output is correct
2 Correct 3 ms 384 KB Output is correct
3 Execution timed out 1079 ms 384 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Execution timed out 1072 ms 256 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 128 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 256 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1058 ms 256 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -