結果

問題 No.2769 Number of Rhombi
ユーザー tailstails
提出日時 2024-05-31 22:59:27
言語 cLay
(20240714-1)
結果
AC  
実行時間 1,245 ms / 5,000 ms
コード長 535 bytes
コンパイル時間 2,354 ms
コンパイル使用メモリ 186,012 KB
実行使用メモリ 81,408 KB
最終ジャッジ日時 2024-05-31 23:00:06
合計ジャッジ時間 36,086 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
6,812 KB
testcase_01 AC 2 ms
6,944 KB
testcase_02 AC 2 ms
6,944 KB
testcase_03 AC 660 ms
56,960 KB
testcase_04 AC 571 ms
49,792 KB
testcase_05 AC 583 ms
34,816 KB
testcase_06 AC 747 ms
43,392 KB
testcase_07 AC 1,003 ms
52,992 KB
testcase_08 AC 1,006 ms
55,680 KB
testcase_09 AC 1,053 ms
60,416 KB
testcase_10 AC 1,168 ms
67,072 KB
testcase_11 AC 1,191 ms
72,448 KB
testcase_12 AC 1,223 ms
76,416 KB
testcase_13 AC 1,224 ms
79,232 KB
testcase_14 AC 1,169 ms
80,768 KB
testcase_15 AC 1,155 ms
81,024 KB
testcase_16 AC 1,095 ms
81,280 KB
testcase_17 AC 1,108 ms
81,280 KB
testcase_18 AC 1,091 ms
81,408 KB
testcase_19 AC 1,061 ms
81,408 KB
testcase_20 AC 1,043 ms
81,408 KB
testcase_21 AC 1,022 ms
81,408 KB
testcase_22 AC 988 ms
81,408 KB
testcase_23 AC 1,021 ms
81,408 KB
testcase_24 AC 1 ms
6,940 KB
testcase_25 AC 1,241 ms
79,104 KB
testcase_26 AC 1,189 ms
80,256 KB
testcase_27 AC 1,107 ms
81,152 KB
testcase_28 AC 1,148 ms
81,280 KB
testcase_29 AC 1,101 ms
81,408 KB
testcase_30 AC 1,117 ms
81,408 KB
testcase_31 AC 1,245 ms
76,416 KB
testcase_32 AC 1,074 ms
55,936 KB
testcase_33 AC 1,001 ms
55,936 KB
testcase_34 AC 1,174 ms
64,896 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

map<pair<pair<ll,ll>,pair<ll,ll>>,ll>m;
ll@n,@(x,y)[n],z=0;
rep(i,n){
	rep(j,i){
		ll cx=x[i]+x[j];
		ll cy=y[i]+y[j];
		ll dx=x[i]-x[j];
		ll dy=y[i]-y[j];
		if(dx==0){
			m[{{cx,cy},{0,1}}]+=1;
			z+=m[{{cx,cy},{1,0}}];
		}else if(dy==0){
			m[{{cx,cy},{1,0}}]+=1;
			z+=m[{{cx,cy},{0,1}}];
		}else{
			ll g=gcd(abs(dx),abs(dy));
			dx/=g;
			dy/=g;
			if(dy<0){
				dx=-dx;
				dy=-dy;
			}
			m[{{cx,cy},{dx,dy}}]+=1;
			ll ex=-dy;
			ll ey=dx;
			if(ey<0){
				ex=-ex;
				ey=-ey;
			}
			z+=m[{{cx,cy},{ex,ey}}];
		}
	}
}
wt(z);
0