Submission #145572

#TimeUsernameProblemLanguageResultExecution timeMemory
145572cfalasRectangles (IOI19_rect)C++14
37 / 100
5096 ms28408 KiB
#include<bits/stdc++.h>
using namespace std;
//#pragma GCC optimize("Ofast")
//#pragma GCC target("avx,avx2,fma")
//#pragma GCC optimize("unroll-loops")
#include "rect.h"

long long count_rectangles(std::vector<std::vector<int> > a) {
	long long ans=0;
	for(int i=1;i<a.size()-1;i++){
		for(int j=1;j<a[i].size()-1;j++){
			for(int x=i;x<a.size()-1;x++){
				for(int y=j;y<a[i].size()-1;y++){
					int ma=0;
					bool ok = true;
					for(int xx=i;xx<=x;xx++){
						for(int yy=j;yy<=y;yy++){
							if(a[xx][j-1]<=a[xx][yy] || a[xx][y+1]<=a[xx][yy] || a[i-1][yy]<=a[xx][yy] || a[x+1][yy]<=a[xx][yy]){
								ok = false;
								break;
							}
						}
						if(!ok) break;
					}
					//cout<<"Starting at ("<<i<<","<<j<<") ending at ("<<x<<","<<y<<"): "<<ok<<endl;
					if(!ok) continue;
					//cout<<"----------------\n";
					ans++;
				}
			}
		}
	}
	return ans;
}

Compilation message (stderr)

rect.cpp: In function 'long long int count_rectangles(std::vector<std::vector<int> >)':
rect.cpp:10:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=1;i<a.size()-1;i++){
              ~^~~~~~~~~~~
rect.cpp:11:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int j=1;j<a[i].size()-1;j++){
               ~^~~~~~~~~~~~~~
rect.cpp:12:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for(int x=i;x<a.size()-1;x++){
                ~^~~~~~~~~~~
rect.cpp:13:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int y=j;y<a[i].size()-1;y++){
                 ~^~~~~~~~~~~~~~
rect.cpp:14:10: warning: unused variable 'ma' [-Wunused-variable]
      int ma=0;
          ^~
#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...