Submission #941287

#TimeUsernameProblemLanguageResultExecution timeMemory
941287sleepntsheepLottery (CEOI18_lot)C11
45 / 100
45 ms65536 KiB
#include<stdio.h>

#define N 10001
int n,l,q,a[N],c[101],cc,o[101];
short ans[100][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)];

    scanf("%d",&q);
    for(int i=0;i<q;++i) scanf("%d",c+i);

    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)];
        for(int k=0;k<q;++k)
        {
            if(c[k]>=d)
            {
                ans[k][i]++;
                ans[k][j]++;
            }
        }
    }

    for(int u=0;u<q;++u)
    {
        for(int i=1;i+l-1<=n;++i)printf("%d ",ans[u][i]);
        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:20:5: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   20 |     scanf("%d",&q);
      |     ^~~~~~~~~~~~~~
lot.c:21:26: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   21 |     for(int i=0;i<q;++i) scanf("%d",c+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...