Submission #142953

#TimeUsernameProblemLanguageResultExecution timeMemory
142953Ruxandra985Calvinball championship (CEOI15_teams)C++14
10 / 100
437 ms596 KiB
#include <cstdio> #include <iostream> #include <cstring> #define DIMN 10010 #define MOD 1000000007 using namespace std; int v[DIMN],maxi_now[DIMN]; long long s[2][DIMN]; int main() { // FILE *fin = fopen ("a.in","r"); // FILE *fout = fopen ("a.out","w"); int n,i,lin,j; scanf ("%d",&n); for (i=1;i<=n;i++){ scanf ("%d",&v[i]); maxi_now[i] = max ( maxi_now[i-1] , v[i] ); } /// secv e de forma : prefix comun , v[i]-1 , orice respecta long long sol = 0; for (i=0;i<=n;i++) s[0][i] = 1; for (i=1;i<=n;i++){ lin = (i&1); for (j=1;j<=n;j++){ s[lin][j] = (s[1-lin][j-1] + (s[1-lin][j] * j)%MOD)%MOD; } /// sufixul pe care il modificam are lungimea i /// schimbi n-i ca sa scada lexicografic sol = (sol + (s[lin][maxi_now[n-i-1]] * (v[n-i] - 1)%MOD)%MOD); memset (s[1-lin] , 0 , sizeof(s[1-lin])); } printf ("%lld" , (sol + v[n])%MOD); return 0; }

Compilation message (stderr)

teams.cpp: In function 'int main()':
teams.cpp:14:11: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf ("%d",&n);
     ~~~~~~^~~~~~~~~
teams.cpp:16:15: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf ("%d",&v[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...