Submission #1013019

#TimeUsernameProblemLanguageResultExecution timeMemory
101301912345678Rectangles (IOI19_rect)C++17
37 / 100
5103 ms61328 KiB
#include "rect.h"
#include <bits/stdc++.h>
#pragma gcc-optimize("o3, unroll-loops")
using namespace std;

long long count_rectangles(std::vector<std::vector<int> > a) {
	int n=a.size(), m=a[0].size();
	long long res=0;
	for (int r1=1; r1<n-1; r1++)
	{
		for (int c1=1; c1<m-1; c1++)
		{
            vector<int> c(m, 1), mxc(m);
			for (int r2=r1; r2<n-1; r2++)
			{
                int mx=0, f=0;
				for (int c2=c1; c2<m-1; c2++)
				{
					if (c[c2]==2) break;
                    mx=max(mx, a[r2][c2]);
					mxc[c2]=max(mxc[c2], a[r2][c2]);
                    if (mx>=a[r2][c1-1])
					{
						c[c2]=2;
						break;
					}
					if (mxc[c2]>=a[r1-1][c2]||mxc[c2]>=a[r2+1][c2]) f=1;
					if (mx>=a[r2][c2+1]) c[c2]=0;
					if (c[c2]==1&&!f) res++;
				}
			}
		}
	}
	return res;
}

Compilation message (stderr)

rect.cpp:3: warning: ignoring '#pragma gcc ' [-Wunknown-pragmas]
    3 | #pragma gcc-optimize("o3, unroll-loops")
      |
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...