| 26641 | 2026-04-05 10:05:34 | Kristóf | Háromszögek | cpp17 | Elfogadva 100/100 | 67ms | 5920 KiB |
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Point
{
long long x,y;
int id;
bool operator==(const Point &other)
{
return x==other.x && y==other.y;
}
};
int fordul(Point &a,Point &b,Point &c)
{
long long s=(c.y-a.y)*(b.x-a.x)-(c.x-a.x)*(b.y-a.y);
return (s>0)-(s<0);
}
long long pitagorasz(Point &a,Point &b)
{
return (a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y);
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n;cin>>n;
vector<Point> pontok1(n);
vector<Point> pontok2(n);
for(int i=0;i<n;i++)
{
cin>>pontok1[i].x>>pontok1[i].y;
pontok1[i].id=i;
}
pontok2=pontok1;
sort(pontok1.begin()+2,pontok1.end(),[&](Point a,Point b)
{
if(fordul(pontok1[0],a,b)==0)
{
return pitagorasz(pontok1[0],a)>pitagorasz(pontok1[0],b);
}
return fordul(pontok1[0],a,b)<0;
});
//swap(pontok2[1],pontok2[0]);
//cout<<pontok2[0].x<<" "<<pontok2[0].y<<"\n\n";
sort(pontok2.begin()+2,pontok2.end(),[&](Point a,Point b)
{
if(fordul(pontok2[1],a,b)==0)
{
return pitagorasz(pontok2[1],a)>pitagorasz(pontok2[1],b);
}
return fordul(pontok2[1], a,b)>0;
});
//for(int i=0;i<n;i++)cout<<pontok2[i].x<<" "<<pontok2[i].y<<"\n";
//cout<<"\n\n\n";
//for(int i=0;i<n;i++)cout<<pontok1[i].x<<" "<<pontok1[i].y<<"\n";
pair<int,int> ans;
vector<int> indexinp2(n),indexinp1(n);
for (int i=2;i<pontok2.size();i++) {
indexinp2[pontok2[i].id]=i;
indexinp1[pontok1[i].id]=i;
}
ans.first=0;
for(int id=2;id<n;id++)
{
int curr=n-indexinp1[id]-indexinp2[id]+4;
//cout<<curr<<" "<<i<<"\n";
if(curr>ans.first)
{
ans.first=curr;
ans.second=id;
}
}
cout<<ans.second+1<<" "<<ans.first;
return 0;
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 1ms | 500 KiB | ||||
| 2 | Elfogadva | 39ms | 3636 KiB | ||||
| subtask2 | 5/5 | ||||||
| 3 | Elfogadva | 2ms | 316 KiB | ||||
| 4 | Elfogadva | 2ms | 316 KiB | ||||
| 5 | Elfogadva | 2ms | 316 KiB | ||||
| 6 | Elfogadva | 1ms | 508 KiB | ||||
| 7 | Elfogadva | 1ms | 316 KiB | ||||
| 8 | Elfogadva | 1ms | 316 KiB | ||||
| subtask3 | 10/10 | ||||||
| 9 | Elfogadva | 1ms | 316 KiB | ||||
| 10 | Elfogadva | 1ms | 316 KiB | ||||
| 11 | Elfogadva | 3ms | 564 KiB | ||||
| 12 | Elfogadva | 26ms | 2592 KiB | ||||
| 13 | Elfogadva | 32ms | 3044 KiB | ||||
| 14 | Elfogadva | 1ms | 316 KiB | ||||
| subtask4 | 10/10 | ||||||
| 15 | Elfogadva | 2ms | 316 KiB | ||||
| 16 | Elfogadva | 2ms | 508 KiB | ||||
| 17 | Elfogadva | 2ms | 316 KiB | ||||
| 18 | Elfogadva | 2ms | 316 KiB | ||||
| 19 | Elfogadva | 2ms | 564 KiB | ||||
| 20 | Elfogadva | 2ms | 564 KiB | ||||
| 21 | Elfogadva | 13ms | 1844 KiB | ||||
| 22 | Elfogadva | 12ms | 1848 KiB | ||||
| 23 | Elfogadva | 10ms | 1852 KiB | ||||
| 24 | Elfogadva | 39ms | 5892 KiB | ||||
| subtask5 | 20/20 | ||||||
| 25 | Elfogadva | 2ms | 316 KiB | ||||
| 26 | Elfogadva | 2ms | 316 KiB | ||||
| 27 | Elfogadva | 2ms | 316 KiB | ||||
| 28 | Elfogadva | 1ms | 508 KiB | ||||
| 29 | Elfogadva | 1ms | 316 KiB | ||||
| 30 | Elfogadva | 1ms | 316 KiB | ||||
| 31 | Elfogadva | 1ms | 316 KiB | ||||
| 32 | Elfogadva | 1ms | 316 KiB | ||||
| 33 | Elfogadva | 3ms | 564 KiB | ||||
| 34 | Elfogadva | 26ms | 2592 KiB | ||||
| 35 | Elfogadva | 32ms | 3044 KiB | ||||
| 36 | Elfogadva | 2ms | 512 KiB | ||||
| 37 | Elfogadva | 3ms | 316 KiB | ||||
| 38 | Elfogadva | 3ms | 756 KiB | ||||
| 39 | Elfogadva | 3ms | 564 KiB | ||||
| 40 | Elfogadva | 4ms | 440 KiB | ||||
| 41 | Elfogadva | 6ms | 820 KiB | ||||
| 42 | Elfogadva | 13ms | 1320 KiB | ||||
| 43 | Elfogadva | 18ms | 1844 KiB | ||||
| 44 | Elfogadva | 25ms | 2568 KiB | ||||
| 45 | Elfogadva | 30ms | 3040 KiB | ||||
| 46 | Elfogadva | 30ms | 3124 KiB | ||||
| 47 | Elfogadva | 1ms | 316 KiB | ||||
| subtask6 | 55/55 | ||||||
| 48 | Elfogadva | 2ms | 316 KiB | ||||
| 49 | Elfogadva | 39ms | 3516 KiB | ||||
| 50 | Elfogadva | 2ms | 316 KiB | ||||
| 51 | Elfogadva | 2ms | 316 KiB | ||||
| 52 | Elfogadva | 1ms | 508 KiB | ||||
| 53 | Elfogadva | 1ms | 316 KiB | ||||
| 54 | Elfogadva | 1ms | 316 KiB | ||||
| 55 | Elfogadva | 1ms | 316 KiB | ||||
| 56 | Elfogadva | 1ms | 316 KiB | ||||
| 57 | Elfogadva | 3ms | 564 KiB | ||||
| 58 | Elfogadva | 26ms | 2592 KiB | ||||
| 59 | Elfogadva | 32ms | 3044 KiB | ||||
| 60 | Elfogadva | 2ms | 316 KiB | ||||
| 61 | Elfogadva | 2ms | 508 KiB | ||||
| 62 | Elfogadva | 2ms | 316 KiB | ||||
| 63 | Elfogadva | 2ms | 316 KiB | ||||
| 64 | Elfogadva | 2ms | 564 KiB | ||||
| 65 | Elfogadva | 2ms | 564 KiB | ||||
| 66 | Elfogadva | 13ms | 1844 KiB | ||||
| 67 | Elfogadva | 12ms | 1848 KiB | ||||
| 68 | Elfogadva | 10ms | 1852 KiB | ||||
| 69 | Elfogadva | 39ms | 5892 KiB | ||||
| 70 | Elfogadva | 2ms | 512 KiB | ||||
| 71 | Elfogadva | 3ms | 316 KiB | ||||
| 72 | Elfogadva | 3ms | 756 KiB | ||||
| 73 | Elfogadva | 3ms | 564 KiB | ||||
| 74 | Elfogadva | 4ms | 440 KiB | ||||
| 75 | Elfogadva | 6ms | 820 KiB | ||||
| 76 | Elfogadva | 13ms | 1320 KiB | ||||
| 77 | Elfogadva | 18ms | 1844 KiB | ||||
| 78 | Elfogadva | 25ms | 2568 KiB | ||||
| 79 | Elfogadva | 30ms | 3040 KiB | ||||
| 80 | Elfogadva | 1ms | 316 KiB | ||||
| 81 | Elfogadva | 2ms | 316 KiB | ||||
| 82 | Elfogadva | 3ms | 568 KiB | ||||
| 83 | Elfogadva | 3ms | 564 KiB | ||||
| 84 | Elfogadva | 3ms | 568 KiB | ||||
| 85 | Elfogadva | 6ms | 820 KiB | ||||
| 86 | Elfogadva | 13ms | 1380 KiB | ||||
| 87 | Elfogadva | 18ms | 1860 KiB | ||||
| 88 | Elfogadva | 26ms | 2568 KiB | ||||
| 89 | Elfogadva | 32ms | 3124 KiB | ||||
| 90 | Elfogadva | 37ms | 3508 KiB | ||||
| 91 | Elfogadva | 46ms | 4248 KiB | ||||
| 92 | Elfogadva | 52ms | 4712 KiB | ||||
| 93 | Elfogadva | 61ms | 5172 KiB | ||||
| 94 | Elfogadva | 59ms | 5184 KiB | ||||
| 95 | Elfogadva | 65ms | 5680 KiB | ||||
| 96 | Elfogadva | 65ms | 5684 KiB | ||||
| 97 | Elfogadva | 67ms | 5896 KiB | ||||
| 98 | Elfogadva | 65ms | 5904 KiB | ||||
| 99 | Elfogadva | 65ms | 5920 KiB | ||||
| 100 | Elfogadva | 30ms | 3124 KiB | ||||
| 101 | Elfogadva | 1ms | 316 KiB | ||||