Submission #908061

#TimeUsernameProblemLanguageResultExecution timeMemory
908061ibm2006Paint (COI20_paint)C++17
8 / 100
3098 ms13448 KiB
#include<bits/stdc++.h>
using namespace std;
typedef int ll;
ll n,i,j,k,l,r,x,y,z,w,s,t,e,ee,m;
vector<vector<ll>> a,c;
void f(ll x,ll y,ll z)
{
    c[x][y]=t;
    if(a[x][y]==a[x+1][y]&&c[x+1][y]!=t)
        f(x+1,y,z);
    if(a[x][y]==a[x-1][y]&&c[x-1][y]!=t)
        f(x-1,y,z);
        if(a[x][y]==a[x][y+1]&&c[x][y+1]!=t)
        f(x,y+1,z);
        if(a[x][y]==a[x][y-1]&&c[x][y-1]!=t)
        f(x,y-1,z);
        a[x][y]=z;
}
int main()
{
    scanf("%d %d",&n,&m);
    a.resize(n+10);
    c.resize(n+10);
    for(i=0;i<=n+1;i++)
    {
        a[i].resize(m+10);
        c[i].resize(m+10);
    }
    for(i=0;i<=n+1;i++)
    {
        for(j=0;j<=m+1;j++)
        {
            a[i][j]=-1;
        }
    }
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    scanf("%lld",&e);
    for(ee=0;ee<e;ee++)
    {
        scanf("%d %d %d",&x,&y,&z);
        t++;
        f(x,y,z);
    }
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
        {
            printf("%d ",a[i][j]);
        }
        printf("\n");
    }
}

Compilation message (stderr)

paint.cpp: In function 'void f(ll, ll, ll)':
paint.cpp:11:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   11 |     if(a[x][y]==a[x-1][y]&&c[x-1][y]!=t)
      |     ^~
paint.cpp:13:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
   13 |         if(a[x][y]==a[x][y+1]&&c[x][y+1]!=t)
      |         ^~
paint.cpp: In function 'int main()':
paint.cpp:43:15: warning: format '%lld' expects argument of type 'long long int*', but argument 2 has type 'll*' {aka 'int*'} [-Wformat=]
   43 |     scanf("%lld",&e);
      |            ~~~^  ~~
      |               |  |
      |               |  ll* {aka int*}
      |               long long int*
      |            %d
paint.cpp:21:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   21 |     scanf("%d %d",&n,&m);
      |     ~~~~~^~~~~~~~~~~~~~~
paint.cpp:40:18: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   40 |             scanf("%d",&a[i][j]);
      |             ~~~~~^~~~~~~~~~~~~~~
paint.cpp:43:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   43 |     scanf("%lld",&e);
      |     ~~~~~^~~~~~~~~~~
paint.cpp:46:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   46 |         scanf("%d %d %d",&x,&y,&z);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...