제출 #1205530

#제출 시각아이디문제언어결과실행 시간메모리
1205530tamzidMosaic (IOI24_mosaic)C++20
0 / 100
1020 ms2162688 KiB
#include "mosaic.h"
#include <vector>

std::vector<long long> mosaic(std::vector<int> X, std::vector<int> Y,
                              std::vector<int> T, std::vector<int> B,
                              std::vector<int> L, std::vector<int> R) {
  int Q = (int)T.size();
  std::vector<long long> C(Q, 0);

  int n = X.size();
  std::vector<std::vector<int>> grid(n,std::vector<int>(n));

  for(int i=0;i<n;++i)
  {
    grid[i][0] = Y[i];
  }
  for(int i=0;i<n;++i)
  {
    grid[0][i] = X[i];
  }


  if(grid[0][1] == 0 && grid[1][0] == 0)
  {
    grid[1][1] = 1;
  }
  else
  {
    grid[1][1] = 0;
  }

  for(int i=0;i<Q;++i)
  {
    if(T[i] == B[i])
    {
      int cnt = 0;
      for(int i=L[i];i<=R[i];++i)
      {
        if(grid[T[i]][i] == 1)
          ++cnt;
      }
      C[i] = cnt;
    }
    else
    {
      int cnt = 0;
      for(int i=T[i];i<=B[i];++i)
      {
        for(int j=L[i];j<=R[i];++j)
        {
          if(grid[i][j] == 1)
            ++cnt;
        }
      }
      C[i] = cnt;
    }
  }

  return C;
}
#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...