Submission #1837821


Source Code Expand

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <cstring>

#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <unordered_map>
#include <unordered_set>

#include <complex>

#include <functional>
#include <cassert>

typedef long long ll;
using namespace std;

#define debug(x) cerr << #x << " = " << (x) << endl;


#define mod 1000000007 //1e9+7(prime number)
#define INF 1000000000 //1e9
#define LLINF 2000000000000000000LL //2e18
#define SIZE 1010

int h,w;
int b[SIZE][SIZE];

ll calc(){
  ll sum[SIZE][SIZE];
  ll maxL[SIZE], maxR[SIZE];
  
  for(int i=0;i<h;i++){
    sum[i][0] = 0;
    for(int j=0;j<w;j++){
      sum[i][j+1] = b[i][j] + sum[i][j];
    }
  }

  for(int i=0;i<w;i++) maxL[i] = maxR[i] = -LLINF;
  
  for(int l=0;l<w;l++){
    for(int r=l;r<w;r++){
      ll minS = 0;
      ll curS = 0;

      for(int i=0;i<h;i++){
        curS += sum[i][r+1] - sum[i][l];
        maxL[r] = max(maxL[r], curS - minS);
        maxR[l] = max(maxR[l], curS - minS);
        minS = min(minS, curS);
      }
    }
  }

  ll res = -LLINF;
  
  for(int i=0;i<w-1;i++){
    for(int j=i+1;j<w;j++){
      res = max(res, maxL[i] + maxR[j]);
    }
  }
  
  return res;
}

void rotate(){
  int b2[SIZE][SIZE];

  for(int i=0;i<h;i++){
    for(int j=0;j<w;j++){
      b2[w-j-1][h-i-1] = b[i][j];
    }
  }

  swap(h,w);

  for(int i=0;i<h;i++){
    for(int j=0;j<w;j++){
      b[i][j] = b2[i][j];
      printf("%3d ",b[i][j]);
    }
    puts("");
  }
}

int main(){
  
  scanf("%d%d",&h,&w);

  for(int i=0;i<h;i++){
    for(int j=0;j<w;j++){
      scanf("%d",b[i]+j);
    }
  }

  ll ans = calc();
  rotate();
  ans = max(ans,calc());

  printf("%lld\n",ans);
  
  return 0;
}

Submission Info

Submission Time
Task D - 庭園
User goodbaton
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1893 Byte
Status WA
Exec Time 91 ms
Memory 8704 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:96:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&h,&w);
                      ^
./Main.cpp:100:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
       scanf("%d",b[i]+j);
                         ^

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 0 / 50 0 / 50
Status
WA × 4
WA × 15
WA × 34
Set Name Test Cases
Sample sample0.txt, sample1.txt, sample2.txt, sample3.txt
Subtask1 subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt
All sample0.txt, sample1.txt, sample2.txt, sample3.txt, subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
Case Name Status Exec Time Memory
sample0.txt WA 2 ms 2304 KB
sample1.txt WA 2 ms 2304 KB
sample2.txt WA 2 ms 2304 KB
sample3.txt WA 2 ms 2304 KB
subtask0_0.txt WA 3 ms 2688 KB
subtask0_1.txt WA 3 ms 4736 KB
subtask0_10.txt WA 3 ms 4608 KB
subtask0_11.txt WA 2 ms 2688 KB
subtask0_12.txt WA 3 ms 2688 KB
subtask0_13.txt WA 3 ms 4736 KB
subtask0_14.txt WA 3 ms 4736 KB
subtask0_2.txt WA 3 ms 2688 KB
subtask0_3.txt WA 3 ms 2688 KB
subtask0_4.txt WA 3 ms 2688 KB
subtask0_5.txt WA 3 ms 2688 KB
subtask0_6.txt WA 3 ms 2688 KB
subtask0_7.txt WA 3 ms 2688 KB
subtask0_8.txt WA 3 ms 4736 KB
subtask0_9.txt WA 3 ms 4736 KB
subtask1_0.txt WA 70 ms 7040 KB
subtask1_1.txt WA 80 ms 7168 KB
subtask1_10.txt WA 68 ms 7552 KB
subtask1_11.txt WA 81 ms 8704 KB
subtask1_12.txt WA 78 ms 7552 KB
subtask1_13.txt WA 91 ms 7168 KB
subtask1_14.txt WA 67 ms 8320 KB
subtask1_2.txt WA 91 ms 7680 KB
subtask1_3.txt WA 73 ms 7424 KB
subtask1_4.txt WA 71 ms 8448 KB
subtask1_5.txt WA 87 ms 7296 KB
subtask1_6.txt WA 80 ms 7168 KB
subtask1_7.txt WA 78 ms 7552 KB
subtask1_8.txt WA 86 ms 8576 KB
subtask1_9.txt WA 70 ms 8192 KB