Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int i,j,t,tt,n,m,k,l,p,r1,a[111][111];
- long long r2,s[111][111];
- int main() {
- scanf("%d",&tt);
- for (t=1; t<=tt; t++) {
- scanf("%d%d%d",&n,&m,&k); r1=r2=0;
- for (i=1; i<=n; i++) for (j=1; j<=m; j++) {
- scanf("%d",&a[i][j]);
- s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];
- }
- for (i=1; i<=n; i++) for (j=1; j<=m; j++) {
- for (l=0, p=j; p>=1; p--) {
- while (s[i][j]-s[i][p-1]-s[l][j]+s[l][p-1]>k) l++;
- if (l>=i) break;
- if ((i-l)*(j-p+1)>r1 || ((i-l)*(j-p+1)==r1 && r2>s[i][j]-s[i][p-1]-s[l][j]+s[l][p-1])) { r1=(i-l)*(j-p+1); r2=s[i][j]-s[i][p-1]-s[l][j]+s[l][p-1]; }
- }
- }
- printf("Case #%d: %d %lld\n",t,r1,r2);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement