結果

問題 No.947 ABC包囲網
ユーザー 37zigen
提出日時 2019-12-10 02:36:04
言語 Java
(openjdk 23)
結果
WA  
実行時間 -
コード長 915 bytes
コンパイル時間 2,483 ms
コンパイル使用メモリ 77,584 KB
実行使用メモリ 66,424 KB
最終ジャッジ日時 2024-06-23 13:25:33
合計ジャッジ時間 11,480 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 7 WA * 21 TLE * 1 -- * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

//精度不足
//速度不足
//正三角形の条件分け不足
//記録用submit

import java.util.*;
import java.math.*;
import java.io.*;
class Main
{

	public static void main(String[] args)
	{
		new Main().run();
	}

	void run(){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		long[] px=new long[n];
		long[] py=new long[n];
		double[] ang=new double[2*n];
		for(int i=0;i<n;++i){
			px[i]=sc.nextLong();
			py[i]=sc.nextLong();
			ang[i]=Math.atan2(py[i],px[i]);
			if(ang[i]<0)ang[i]+=2*Math.PI;
			ang[i+n]=ang[i]+2*Math.PI;
		}
		int ans=0;
		Arrays.sort(ang);
		for(int i=0;i<2*n;++i){
			for(int j=i+1;j<2*n;++j){
				if(ang[j]-ang[i]>Math.PI/3) break;
				for(int k=j+1;k<2*n;++k){
					if(ang[i]+Math.PI<ang[k]&&ang[k]<ang[j]+Math.PI){
						++ans;
					}
				}
			}
		}
		System.out.println(ans);
	}

	void tr(Object...objects){
		System.out.println(Arrays.deepToString(objects));
	}
}
0