結果
| 問題 |
No.1041 直線大学
|
| コンテスト | |
| ユーザー |
umezo
|
| 提出日時 | 2020-05-01 22:45:34 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 886 bytes |
| コンパイル時間 | 3,447 ms |
| コンパイル使用メモリ | 224,412 KB |
| 最終ジャッジ日時 | 2025-01-10 05:19:23 |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 32 WA * 5 |
ソースコード
#define _GLIBCXX_DEBUG
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define ALL(v) v.begin(), v.end()
typedef long long ll;
template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; }
template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; }
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin>>n;
double X[n],Y[n],A[n],B[n];
rep(i,n) cin>>X[i]>>Y[i];
double c;
int max1=0;
map<double,int> m;
rep(i,n){
int max=0,max2=0;
rep(j,n) A[j]=X[j]-X[i],B[j]=Y[j]-Y[i];
rep(j,n){
if(A[j]==0 && B[j]!=0){
max2++;
if(max2>max) max=max2;
}
else if(A[j]!=0 && B[j]!=0){
c=B[j]/A[j];
m[c]++;
if(m[c]>max) max=m[c];
}
}
m.clear();
if(max>max1) max1=max;
}
cout << max1+1 <<endl;
return 0;
}
umezo