Submission #941283

#TimeUsernameProblemLanguageResultExecution timeMemory
941283sleepntsheepLottery (CEOI18_lot)C11
25 / 100
31 ms65536 KiB
#include<stdio.h> #define N 10001 int n,l,q,a[N]; short ans[N][N]; short dp[N*(N+1)/2]; int pos(int x,int y) { return (y+1ll)*(y+2)/2+x; } int main() { scanf("%d%d",&n,&l); for(int i=1;i<=n;++i)scanf("%d",a+i); for(int i=1;i<=n;++i)for(int j=i+1;j<=n;++j)dp[pos(i,j)]=(a[i]!=a[j]); for(int i=1;i<=n;++i)for(int j=i+1;j<=n;++j)dp[pos(i,j)]+=dp[pos(i-1,j-1)]; for(int i=1;i+l-1<=n;++i)for(int j=i+1;j+l-1<=n;++j) { int d=dp[pos(i+l-1,j+l-1)]-dp[pos(i-1,j-1)]; ans[i][d]++; ans[j][d]++; } for(int i=1;i<=n;++i)for(int j=1;j<=n;++j)ans[i][j]+=ans[i][j-1]; scanf("%d",&q); for(int u;q--;) { scanf("%d",&u); for(int i=1;i+l-1<=n;++i)printf("%d ",ans[i][u]); puts(""); } }

Compilation message (stderr)

lot.c: In function 'main':
lot.c:15:5: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |     scanf("%d%d",&n,&l);
      |     ^~~~~~~~~~~~~~~~~~~
lot.c:16:26: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |     for(int i=1;i<=n;++i)scanf("%d",a+i);
      |                          ^~~~~~~~~~~~~~~
lot.c:27:5: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |     scanf("%d",&q);
      |     ^~~~~~~~~~~~~~
lot.c:30:9: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   30 |         scanf("%d",&u);
      |         ^~~~~~~~~~~~~~
#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...