結果

問題 No.2355 Unhappy Back Dance
コンテスト
ユーザー kotatsugame
提出日時 2023-06-16 21:47:13
言語 C++14
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=c++14 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 545 ms / 6,000 ms
コード長 665 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 673 ms
コンパイル使用メモリ 96,044 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2026-03-10 17:04:52
合計ジャッジ時間 8,147 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 37
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
long gcd(long a,long b)
{
	while(b)
	{
		long t=a%b;
		a=b;
		b=t;
	}
	return a;
}
int N;
long X[1500],Y[1500];
int main()
{
	cin>>N;
	for(int i=0;i<N;i++)cin>>X[i]>>Y[i];
	int cnt=0;
	vector<pair<long,long> >T;
	T.reserve(N);
	for(int i=0;i<N;i++)
	{
		T.clear();
		for(int j=0;j<N;j++)if(i!=j)
		{
			long x=X[i]-X[j],y=Y[i]-Y[j];
			long g=abs(gcd(x,y));
			x/=g;
			y/=g;
			T.push_back(make_pair(x,y));
		}
		sort(T.begin(),T.end());
		bool fn=false;
		for(int j=0;j+1<T.size();j++)
		{
			if(T[j]==T[j+1])
			{
				fn=true;
				break;
			}
		}
		if(fn)cnt++;
	}
	cout<<cnt<<endl;
}
0