第6回日本情報オリンピック 本選(オンライン)

Submission #1652465

Source codeソースコード

#include <bits/stdc++.h>
#define REP(i,a,b) for(int i=(a);i<(b);i++)
#define RREP(i,a,b) for(int i=(a);i>=(b);i--)
typedef long long ll; typedef long double ld;
using namespace std;
const int INF=1e9, MOD=1e9+7;
int n,a,b;
bool li[10010][10010]={};
vector<pair<int,int>> vec;

int main(){
	cin >> n;
	REP(i,0,n) cin >> a >> b,vec.push_back(make_pair(a,b)),li[a][b]=true;
	
	int ma=0;
	REP(i,0,n){
		REP(j,0,n){
			if(i!=j){
				int xi=vec[i].first;	int xj=vec[j].first;
				int yi=vec[i].second;	int yj=vec[j].second;
				int x=abs(xj-xi);		int y=abs(yj-yi);
				if(xi-y>=0 and xj-y>=0 and li[xi-y][yi+x] and li[xj-y][yj+x]) ma=max(ma,x*x+y*y);
				if(yi-x>=0 and yj-x>=0 and li[xi+y][yi-x] and li[xj+y][yj-x]) ma=max(ma,x*x+y*y);
			}
		}
	}
	
	cout << ma << endl;
	return 0;
}

Submission

Task問題 C - 最古の遺跡
User nameユーザ名 ecasdqina
Created time投稿日時
Language言語 C++14 (GCC 5.4.1)
Status状態 AC
Score得点 20
Source lengthソースコード長 809 Byte
File nameファイル名
Exec time実行時間 157 ms
Memory usageメモリ使用量 47872 KB

Test case

Set

Set name Score得点 / Max score Cases
set01 2 / 2 data1
set02 2 / 2 data2
set03 2 / 2 data3
set04 2 / 2 data4
set05 2 / 2 data5
set06 2 / 2 data6
set07 2 / 2 data7
set08 2 / 2 data8
set09 2 / 2 data9
set10 2 / 2 data10

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
data1 AC 2 ms 2432 KB
data10 AC 157 ms 47872 KB
data2 AC 11 ms 47360 KB
data3 AC 5 ms 18688 KB
data4 AC 16 ms 47360 KB
data5 AC 15 ms 47488 KB
data6 AC 15 ms 47488 KB
data7 AC 89 ms 9344 KB
data8 AC 130 ms 47616 KB
data9 AC 146 ms 47744 KB