QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#223411#2921. Land EqualityrlongAC ✓0ms3736kbC++171.9kb2023-10-22 03:18:342023-10-22 03:18:35

Judging History

你现在查看的是最新测评结果

  • [2023-10-22 03:18:35]
  • 评测
  • 测评结果:AC
  • 用时:0ms
  • 内存:3736kb
  • [2023-10-22 03:18:34]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int main() {
    int cnts[10];
    for(int i=0;i<=2;i++) cnts[i] = 0;
    ll pw2[65];
    pw2[0] = 1;
    for(int i=1;i<=64;i++) pw2[i] = 2 * pw2[i-1];
    
    int n, m;
    cin >> n >> m;
    int grid[n+5][m+5];
    
    for(int i=1;i<=n;i++) {
        for(int j=1;j<=m;j++) {
            cin >> grid[i][j];
            cnts[grid[i][j]]++;
        }
    }
    
    if(n == 1) {
        if(cnts[0] >= 2) cout << "0" << endl;
        else if(cnts[0] == 1 && grid[1][1] != 0 && grid[1][m] != 0) {
            cout << min(grid[1][1], grid[1][m]) << endl;
        }
        else if(cnts[0] == 1 && grid[1][1] == 0) {
            cout << grid[1][m] << endl;
        }
        else if(cnts[0] == 1 && grid[1][m] == 0) {
            cout << grid[1][1] << endl;
        }
        else {   // only 1s and 2s
            int lo = cnts[2] / 2;
            int hi = cnts[2] - lo;
            cout << pw2[hi] - pw2[lo] << endl;
        }
        
    }
    else if(m == 1) {
        if(cnts[0] >= 2) cout << "0" << endl;
        else if(cnts[0] == 1 && grid[1][1] != 0 && grid[n][1] != 0) {
            cout << min(grid[1][1], grid[n][1]) << endl;
        }
        else if(cnts[0] == 1 && grid[1][1] == 0) {
            cout << grid[n][1] << endl;
        }
        else if(cnts[0] == 1 && grid[n][1] == 0) {
            cout << grid[1][1] << endl;
        }
        else {  // only 1s and 2s
            int lo = cnts[2] / 2;
            int hi = cnts[2] - lo;
            cout << pw2[hi] - pw2[lo] << endl;
        }
        
    }
    else {
    if(cnts[0] >= 2) cout << "0" << endl;
    else if(cnts[0] == 1 && cnts[1] > 0) cout << "1" << endl;
    else if(cnts[0] == 1 && cnts[2] > 0) cout << "2" << endl;
    else {  // only 1s and 2s
        int lo = cnts[2] / 2;
        int hi = cnts[2] - lo;
        cout << pw2[hi] - pw2[lo] << endl;
    }
    }
    

}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3708kb

input:

1 2
0 1

output:

1

result:

ok single line: '1'

Test #2:

score: 0
Accepted
time: 0ms
memory: 3716kb

input:

1 2
0 2

output:

2

result:

ok single line: '2'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

1 2
1 2

output:

1

result:

ok single line: '1'

Test #4:

score: 0
Accepted
time: 0ms
memory: 3732kb

input:

2 1
1
1

output:

0

result:

ok single line: '0'

Test #5:

score: 0
Accepted
time: 0ms
memory: 3676kb

input:

2 1
0
0

output:

0

result:

ok single line: '0'

Test #6:

score: 0
Accepted
time: 0ms
memory: 3652kb

input:

5 5
2 2 2 2 2
2 2 1 2 2
2 1 1 1 2
2 2 1 2 2
2 2 2 2 2

output:

0

result:

ok single line: '0'

Test #7:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

5 5
2 2 2 2 2
2 2 1 2 2
2 1 1 1 2
2 2 1 1 2
2 2 2 2 2

output:

512

result:

ok single line: '512'

Test #8:

score: 0
Accepted
time: 0ms
memory: 3732kb

input:

2 3
0 1 2
1 1 2

output:

1

result:

ok single line: '1'

Test #9:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

2 6
0 2 2 1 2 2
1 1 1 1 2 2

output:

1

result:

ok single line: '1'

Test #10:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

4 4
2 2 2 2
2 1 2 2
2 0 2 2
2 2 2 2

output:

1

result:

ok single line: '1'

Test #11:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

1 3
0 1 2

output:

2

result:

ok single line: '2'

Test #12:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

1 6
2 1 2 0 1 2

output:

2

result:

ok single line: '2'

Test #13:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

6 1
2
1
2
0
1
2

output:

2

result:

ok single line: '2'

Test #14:

score: 0
Accepted
time: 0ms
memory: 3528kb

input:

1 5
0 1 1 1 2

output:

2

result:

ok single line: '2'

Test #15:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

1 6
2 1 2 0 2 1

output:

1

result:

ok single line: '1'

Test #16:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

1 6
1 1 2 0 1 2

output:

1

result:

ok single line: '1'

Test #17:

score: 0
Accepted
time: 0ms
memory: 3532kb

input:

6 1
2
1
2
0
2
1

output:

1

result:

ok single line: '1'

Test #18:

score: 0
Accepted
time: 0ms
memory: 3528kb

input:

1 10
2 1 1 1 0 0 1 1 1 2

output:

0

result:

ok single line: '0'

Test #19:

score: 0
Accepted
time: 0ms
memory: 3592kb

input:

1 10
1 2 0 2 2 2 2 0 2 1

output:

0

result:

ok single line: '0'

Test #20:

score: 0
Accepted
time: 0ms
memory: 3528kb

input:

1 10
0 1 1 1 2 2 1 1 1 0

output:

0

result:

ok single line: '0'

Test #21:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

8 8
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 1 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2

output:

2147483648

result:

ok single line: '2147483648'

Test #22:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

8 8
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

output:

0

result:

ok single line: '0'

Test #23:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

8 8
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1

output:

0

result:

ok single line: '0'

Test #24:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

8 8
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2

output:

0

result:

ok single line: '0'

Test #25:

score: 0
Accepted
time: 0ms
memory: 3524kb

input:

7 9
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2

output:

2147483648

result:

ok single line: '2147483648'

Test #26:

score: 0
Accepted
time: 0ms
memory: 3704kb

input:

31 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2
2 2

output:

0

result:

ok single line: '0'

Test #27:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

1 61
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

output:

1073741824

result:

ok single line: '1073741824'

Test #28:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

8 8
1 0 0 1 1 1 1 0
1 1 1 0 1 1 0 0
1 1 0 1 0 1 1 0
0 1 1 1 0 1 1 1
1 1 1 1 0 0 1 1
1 0 0 1 1 0 1 1
1 0 0 0 1 1 0 1
1 0 0 0 1 1 1 0

output:

0

result:

ok single line: '0'

Test #29:

score: 0
Accepted
time: 0ms
memory: 3676kb

input:

6 10
0 0 0 1 0 1 1 0 0 0
0 1 0 1 0 0 0 0 1 1
0 1 0 0 1 1 0 0 1 0
0 1 0 0 0 1 1 0 0 1
0 1 0 1 0 0 1 0 1 1
1 0 0 1 1 0 1 0 0 0

output:

0

result:

ok single line: '0'

Test #30:

score: 0
Accepted
time: 0ms
memory: 3724kb

input:

8 8
2 0 2 2 2 2 2 2
0 2 0 0 0 2 2 2
0 2 2 0 2 2 0 0
0 2 2 2 0 2 0 2
2 2 0 2 0 0 2 0
0 2 0 2 2 0 2 2
0 2 0 0 2 0 2 2
2 2 2 0 0 0 2 2

output:

0

result:

ok single line: '0'

Test #31:

score: 0
Accepted
time: 0ms
memory: 3656kb

input:

10 6
2 0 2 2 0 2
0 0 2 2 0 2
2 2 0 2 0 2
2 2 2 0 2 0
0 0 2 0 0 2
2 2 2 0 2 2
2 0 0 0 2 0
2 2 0 2 0 0
0 2 2 2 0 0
0 0 0 2 2 0

output:

0

result:

ok single line: '0'

Test #32:

score: 0
Accepted
time: 0ms
memory: 3652kb

input:

8 8
1 1 2 1 2 1 1 1
1 2 1 1 2 2 1 1
2 2 1 2 1 2 2 1
1 1 2 2 1 1 1 2
1 2 1 1 2 1 1 1
1 1 1 2 2 1 2 1
1 2 2 1 2 1 2 1
1 2 2 2 2 2 1 1

output:

8192

result:

ok single line: '8192'

Test #33:

score: 0
Accepted
time: 0ms
memory: 3704kb

input:

7 9
2 2 2 2 1 1 1 1 1
1 2 2 2 1 1 2 2 1
1 1 2 1 1 2 2 2 2
2 1 1 1 2 2 2 1 2
2 1 1 1 1 1 2 1 1
2 2 2 2 1 2 2 1 2
2 2 2 2 1 1 1 2 1

output:

65536

result:

ok single line: '65536'

Test #34:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

9 7
2 1 1 1 2 1 2
2 2 1 2 2 1 2
2 1 1 2 1 1 2
1 2 2 2 2 1 2
1 1 1 1 2 2 2
1 2 1 2 2 2 2
1 1 1 1 1 1 1
2 2 2 2 2 2 2
1 2 1 1 2 1 1

output:

65536

result:

ok single line: '65536'

Test #35:

score: 0
Accepted
time: 0ms
memory: 3736kb

input:

8 8
2 1 0 0 2 1 2 2
1 0 0 1 1 0 2 0
1 0 1 2 0 1 0 2
1 2 1 2 1 2 1 2
0 0 1 2 1 0 0 2
0 0 2 1 2 0 2 1
2 1 1 1 1 0 2 0
0 0 1 2 0 1 1 0

output:

0

result:

ok single line: '0'

Test #36:

score: 0
Accepted
time: 0ms
memory: 3672kb

input:

7 9
1 1 1 0 2 1 1 2 0
2 1 2 2 2 2 2 0 1
2 0 2 2 0 1 2 0 2
0 2 2 0 0 2 1 1 2
0 0 1 1 1 1 0 1 1
1 2 0 1 1 0 1 1 0
0 2 0 1 2 2 0 0 2

output:

0

result:

ok single line: '0'

Test #37:

score: 0
Accepted
time: 0ms
memory: 3652kb

input:

9 7
2 2 0 2 2 1 2
2 0 2 0 1 1 1
2 1 1 0 1 0 2
0 0 0 1 1 0 1
1 2 1 2 2 2 0
1 2 0 0 0 0 2
1 2 1 0 1 2 2
0 2 2 2 2 0 2
2 0 2 0 2 0 1

output:

0

result:

ok single line: '0'

Test #38:

score: 0
Accepted
time: 0ms
memory: 3592kb

input:

1 64
0 2 1 2 0 1 2 0 2 1 1 2 2 2 2 2 1 2 2 1 2 0 0 1 2 1 1 0 0 2 0 1 1 1 1 1 2 1 2 1 2 0 2 2 0 0 1 1 2 2 1 1 1 1 0 0 2 1 2 2 2 0 2 1

output:

0

result:

ok single line: '0'

Test #39:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

64 1
1
1
0
0
1
2
0
1
0
1
0
2
2
2
0
2
1
1
2
1
0
0
2
0
0
1
2
0
1
0
0
2
1
1
0
2
2
0
2
0
1
0
0
1
2
1
0
1
1
2
2
0
1
1
0
0
0
0
2
0
2
1
1
2

output:

0

result:

ok single line: '0'

Test #40:

score: 0
Accepted
time: 0ms
memory: 3604kb

input:

2 32
0 2 2 2 2 1 1 1 2 1 1 2 1 1 2 0 1 1 2 2 2 2 0 0 0 0 0 1 2 1 0 2
0 1 2 2 2 1 1 1 0 0 1 2 2 2 0 0 0 1 1 2 0 0 1 2 2 0 0 2 2 0 2 0

output:

0

result:

ok single line: '0'

Test #41:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

32 2
1 0
1 2
2 0
0 1
0 0
0 2
1 0
1 1
0 2
1 0
1 1
2 0
1 1
1 2
2 0
1 1
0 0
2 0
2 1
1 2
0 2
2 0
0 1
1 2
0 1
1 1
1 1
0 0
2 2
0 1
0 0
2 0

output:

0

result:

ok single line: '0'

Test #42:

score: 0
Accepted
time: 0ms
memory: 3720kb

input:

1 63
1 1 1 2 0 1 1 1 2 1 1 1 2 1 2 2 1 1 2 1 1 2 1 1 1 2 1 1 1 1 2 1 2 2 1 2 2 1 1 2 2 2 1 2 2 1 2 1 2 2 1 1 2 2 1 1 2 2 2 2 1 1 1

output:

1

result:

ok single line: '1'

Test #43:

score: 0
Accepted
time: 0ms
memory: 3728kb

input:

1 64
1 2 1 2 2 1 1 1 0 2 1 1 2 1 2 2 2 2 1 1 1 2 1 2 1 2 1 1 1 2 1 2 1 1 1 2 2 2 1 2 2 2 2 2 1 2 1 1 2 2 1 1 2 2 2 2 2 1 2 2 1 2 1 2

output:

1

result:

ok single line: '1'

Test #44:

score: 0
Accepted
time: 0ms
memory: 3528kb

input:

63 1
1
1
1
1
2
1
1
1
1
2
2
1
1
2
2
2
2
1
2
2
2
1
1
1
1
2
2
1
2
1
2
1
1
1
2
1
1
2
2
2
2
1
1
1
2
1
2
1
2
2
1
1
2
1
1
0
1
2
2
1
1
1
1

output:

1

result:

ok single line: '1'

Test #45:

score: 0
Accepted
time: 0ms
memory: 3536kb

input:

64 1
2
1
2
1
2
1
1
1
1
2
2
1
2
2
2
1
2
1
1
1
2
1
2
1
2
2
2
2
1
1
1
2
2
1
2
0
1
1
2
2
2
2
2
2
2
2
1
2
2
1
1
2
2
2
1
2
2
2
2
1
1
1
1
2

output:

2

result:

ok single line: '2'

Test #46:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

8 8
2 1 1 2 1 1 2 2
1 1 1 1 1 1 2 1
1 2 2 1 2 2 2 1
1 2 1 1 1 2 2 0
1 1 1 1 2 1 1 1
2 1 2 2 2 2 1 1
1 2 2 1 1 2 1 1
1 2 1 2 2 1 2 2

output:

1

result:

ok single line: '1'

Test #47:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

2 32
2 1 1 2 0 2 2 2 1 1 2 1 2 2 1 1 2 1 2 2 2 1 1 2 2 1 1 1 2 2 2 1
1 1 1 2 2 2 2 2 1 2 2 1 1 2 1 2 2 2 1 1 2 1 2 2 2 1 2 1 2 1 2 2

output:

1

result:

ok single line: '1'

Test #48:

score: 0
Accepted
time: 0ms
memory: 3660kb

input:

32 2
2 2
1 1
2 1
1 1
2 1
1 2
1 1
1 1
1 2
2 2
1 1
2 1
1 1
2 1
1 1
1 1
2 1
1 2
1 2
1 1
1 2
1 0
1 2
1 1
1 1
2 1
2 1
2 1
1 2
2 2
1 2
2 2

output:

1

result:

ok single line: '1'

Test #49:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

3 4
1 2 1 1
2 2 1 2
1 2 2 2

output:

8

result:

ok single line: '8'

Test #50:

score: 0
Accepted
time: 0ms
memory: 3660kb

input:

2 3
0 1 2
0 1 2

output:

0

result:

ok single line: '0'

Test #51:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

1 3
2 0 2

output:

2

result:

ok single line: '2'