Submission #34021740
Source Code Expand
#include <iostream>
using namespace std;
static int AH = 0;
static int AW = 0;
static int matA[10][10] = {0};
static int BH = 0;
static int BW = 0;
static int matB[10][10] = {0};
static void readParam();
static bool check(int bx, int by);
int main(void){
readParam();
int dH = AH - BH + 1;
int dW = AW - BW + 1;
for(int j=0; j<dH; j++)
{
for(int i=0; i<dW; i++)
{
if(check(i,j))
{
printf("Yes");
return 0;
}
}
}
printf("No");
return 0;
}
void readParam()
{
cin >> AH;
cin >> AW;
for(int j=0; j<AH; j++)
{
for(int i=0; i<AW; i++)
{
cin >> matA[j][i];
}
}
cin >> BH;
cin >> BW;
for(int j=0; j<BH; j++)
{
for(int i=0; i<BW; i++)
{
cin >> matB[j][i];
}
}
}
bool check(int bx, int by)
{
//printf("x:%d y:%d \n", bx, by);
//行ごとの一致数を確認
//すべての行の一致数が同じであればok
{
int lastCnt = 0;
for(int j=0; j<BH; j++)
{
int cnt = 0;
for(int i=0; i<BW; i++)
{
//printf(" matA[%d][%d]:%d matB[%d][%d]:%d\n"
// , j+bx, i+by, matA[j+bx][i+by]
// , j, i, matB[j][i]);
if(matA[j+bx][i+by] == matB[j][i])
{
cnt++;
}
}
if(cnt > 0)
{
//printf(" AW:%d cnt:%d\n",j+bx,cnt);
if(lastCnt > 0)
{
if(cnt != lastCnt)
{
return false;
}
}
lastCnt = cnt;
}
}
//printf(" w-- %d\n", lastCnt);
if(lastCnt == 0)
{
return false;
}
}
//列ごとの一致数を確認
//すべての列の一致数が同じであればok
{
int lastCnt = 0;
for(int i=0; i<BW; i++)
{
int cnt = 0;
for(int j=0; j<BH; j++)
{
//printf(" matA[%d][%d]:%d matB[%d][%d]:%d\n"
// , j+bx, i+by, matA[j+bx][i+by]
// , j, i, matB[j][i]);
if(matA[j+bx][i+by] == matB[j][i])
{
cnt++;
}
}
if(cnt > 0)
{
//printf(" AH:%d cnt:%d\n",i+by,cnt);
if(lastCnt > 0)
{
if(cnt != lastCnt)
{
return false;
}
}
lastCnt = cnt;
}
}
// printf(" h-- %d\n", lastCnt);
if(lastCnt == 0)
{
return false;
}
}
//printf(" OK\n");
return true;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Matrix Reducing |
| User | senri0123 |
| Language | C++ (GCC 9.2.1) |
| Score | 0 |
| Code Size | 2788 Byte |
| Status | WA |
| Exec Time | 6 ms |
| Memory | 3776 KiB |
Judge Result
| Set Name | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 300 | ||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example0.txt, example1.txt |
| All | 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, example0.txt, example1.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 000.txt | AC | 6 ms | 3544 KiB |
| 001.txt | AC | 2 ms | 3560 KiB |
| 002.txt | AC | 2 ms | 3540 KiB |
| 003.txt | AC | 2 ms | 3584 KiB |
| 004.txt | AC | 2 ms | 3776 KiB |
| 005.txt | AC | 2 ms | 3448 KiB |
| 006.txt | AC | 2 ms | 3560 KiB |
| 007.txt | AC | 2 ms | 3448 KiB |
| 008.txt | AC | 2 ms | 3632 KiB |
| 009.txt | AC | 2 ms | 3632 KiB |
| 010.txt | AC | 2 ms | 3536 KiB |
| 011.txt | AC | 2 ms | 3732 KiB |
| 012.txt | AC | 2 ms | 3732 KiB |
| 013.txt | AC | 2 ms | 3580 KiB |
| 014.txt | AC | 2 ms | 3608 KiB |
| 015.txt | AC | 2 ms | 3556 KiB |
| 016.txt | AC | 2 ms | 3628 KiB |
| 017.txt | AC | 2 ms | 3604 KiB |
| 018.txt | WA | 3 ms | 3556 KiB |
| 019.txt | WA | 2 ms | 3560 KiB |
| 020.txt | AC | 2 ms | 3732 KiB |
| 021.txt | AC | 2 ms | 3656 KiB |
| 022.txt | AC | 3 ms | 3604 KiB |
| 023.txt | WA | 2 ms | 3624 KiB |
| 024.txt | WA | 2 ms | 3480 KiB |
| 025.txt | WA | 2 ms | 3564 KiB |
| 026.txt | WA | 2 ms | 3480 KiB |
| 027.txt | WA | 3 ms | 3556 KiB |
| 028.txt | WA | 2 ms | 3656 KiB |
| 029.txt | AC | 2 ms | 3424 KiB |
| example0.txt | AC | 2 ms | 3736 KiB |
| example1.txt | AC | 2 ms | 3484 KiB |