Submission #1574667


Source Code Expand

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
#include <cassert>
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define REP(i,n) FOR(i,0,n)
#define rep(i,n) FOR(i,0,n)
#define DEBUG(x) cout<<#x<<": "<<x<<endl
#define vint vector<int>
#define vdouble vector<double>
#define vstring vector<string>
using namespace std;

#include<map>
#include<set>
#include<queue>

typedef long long ll;
typedef unsigned long long ull;

const int MAX_N = 1000000;
const int INFTY = (1 << 21); // 2097152
// const ll INFTY = (1LL << 60);
const ll MD = 1000000007LL;
// fprintf(stderr, "%d %lld \n", x, xll);


const int MX = 100;
int H, W;
int ASUM[MX+1][MX+1];
int BSUM[MX+1][MX+1];
int C[MX][MX];

int main() {

	// input
	cin >> H >> W;
	rep(y, H){
		rep(x, W) cin >> C[y][x];
	}

	// accumulate
	rep(y, H+1) {
		ASUM[y][0] = 0;
		BSUM[y][0] = 0;
	}
	rep(x, W+1) {
		ASUM[0][x] = 0;
		BSUM[0][x] = 0;
	}

	for(int y = 1; y <= H; y++)
		for(int x = 1; x <= W; x++){
			ASUM[y][x] = ASUM[y][x-1] + ASUM[y-1][x] - ASUM[y-1][x-1];
			BSUM[y][x] = BSUM[y][x-1] + BSUM[y-1][x] - BSUM[y-1][x-1];
			int c = C[y-1][x-1];
			if( (x + y) % 2 == 0){ ASUM[y][x] += c; }
			if( (x + y) % 2 == 1){ BSUM[y][x] += c; }
		}

	// calc
	int ret = 0;
	for(int y1 = 0; y1 <= H; y1++)
		for(int y2 = y1; y2 <= H; y2++)
			for(int x1 = 0; x1 <= W; x1++)
				for(int x2 = x1; x2 <= W; x2++){
					int a = ASUM[y2][x2] - ASUM[y1][x2] - ASUM[y2][x1] + ASUM[y1][x1];
					int b = BSUM[y2][x2] - BSUM[y1][x2] - BSUM[y2][x1] + BSUM[y1][x1];
					if(a == b) ret = max(ret, (y2 - y1) * (x2 - x1));
				}

	cout << ret << endl;
}

Submission Info

Submission Time
Task B - チョコレート
User threecourse
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1699 Byte
Status AC
Exec Time 69 ms
Memory 512 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 5
AC × 25
Set Name Test Cases
Sample subtask0_sample-01.txt, subtask0_sample-02.txt, subtask0_sample-03.txt, subtask0_sample-04.txt, subtask0_sample-05.txt
All subtask0_sample-01.txt, subtask0_sample-02.txt, subtask0_sample-03.txt, subtask0_sample-04.txt, subtask0_sample-05.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt
Case Name Status Exec Time Memory
subtask0_sample-01.txt AC 1 ms 256 KB
subtask0_sample-02.txt AC 1 ms 256 KB
subtask0_sample-03.txt AC 1 ms 256 KB
subtask0_sample-04.txt AC 1 ms 256 KB
subtask0_sample-05.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 1 ms 256 KB
subtask1_05.txt AC 1 ms 256 KB
subtask1_06.txt AC 2 ms 256 KB
subtask1_07.txt AC 1 ms 256 KB
subtask1_08.txt AC 1 ms 256 KB
subtask1_09.txt AC 67 ms 384 KB
subtask1_10.txt AC 11 ms 384 KB
subtask1_11.txt AC 56 ms 384 KB
subtask1_12.txt AC 56 ms 384 KB
subtask1_13.txt AC 56 ms 384 KB
subtask1_14.txt AC 68 ms 384 KB
subtask1_15.txt AC 69 ms 512 KB
subtask1_16.txt AC 54 ms 384 KB
subtask1_17.txt AC 54 ms 384 KB
subtask1_18.txt AC 1 ms 256 KB
subtask1_19.txt AC 1 ms 384 KB
subtask1_20.txt AC 63 ms 384 KB