Submission #163405

#TimeUsernameProblemLanguageResultExecution timeMemory
163405dantoh000Calvinball championship (CEOI15_teams)C++14
70 / 100
83 ms65540 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod = 1000007;
int main(){
    int n; scanf("%d",&n);
    int a[n];
    int k[n];
    for (int i = 0; i < n; i++) {
        scanf("%d",&a[i]);
        if (i) k[i] = max(k[i-1],a[i]);
        else k[i] = a[i];
    }
    ll ct[n+1][n+1];
    ll ans = a[n-1];
    for (int i = 0; i <= n; i++){
        ct[0][i] = 1;
    }
    for (int j = 1; j < n-1; j++){
        for (int i = 1; i < n; i++){
            ct[j][i] = i*ct[j-1][i]+ct[j-1][i+1];
            ct[j][i] %= mod;
        }
        //printf("before %d: %d unique numbers, adding %d %lld\n",a[j],k[n-j-2],a[n-j-1]-1,ct[j][k[n-j-2]]);
        ans += (a[n-j-1]-1)*ct[j][k[n-j-2]];
        ans %= mod;

    }
    printf("%d",ans);

}

Compilation message (stderr)

teams.cpp: In function 'int main()':
teams.cpp:29:20: warning: format '%d' expects argument of type 'int', but argument 2 has type 'll {aka long long int}' [-Wformat=]
     printf("%d",ans);
                    ^
teams.cpp:6:17: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     int n; scanf("%d",&n);
            ~~~~~^~~~~~~~~
teams.cpp:10:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&a[i]);
         ~~~~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...