国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Ural 2067 Friends and Berries 【思維】

2019-11-08 18:29:24
字體:
來源:轉載
供稿:網友

題目鏈接:http://acm.timus.ru/PRoblem.aspx?space=1&num=2067 題意:給你2*1e5個點,定義最好的朋友是指,u和v的距離大于或等于u,v,w相互三條邊的距離之和的一半,w為除了u,v任意一個點,u,v不可重復,讓你輸出有幾對最好的朋友,并輸出編號 解析:因為三點如果不共線,另外兩點不可能大于三角形周長的一半,所以只能是三點共線的情況,而且u,v必須在線段的兩邊,所以要有只有一對最好的朋友,要么就沒有

#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>using namespace std;const int maxn = 2*1e5+100;int n;struct point{ long long x,y; int id; bool Operator <(const point &b)const { if(x==b.x) return y<b.y; return x<b.x; } bool operator == (const point &b)const { return x==b.x&&y==b.y; }}a[maxn],k;int main(){ scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%I64d %I64d",&a[i].x,&a[i].y); a[i].id = i; } sort(a,a+n); k.x = a[1].x-a[0].x; k.y = a[1].y-a[0].y; int flag = 0; for(int i=2;i<n;i++) { point tmp; tmp.x = a[i].x-a[i-1].x; tmp.y = a[i].y-a[i-1].y; if(tmp.x*k.y != tmp.y*k.x) { flag = 1; break; } } if(flag) puts("0"); else { puts("1"); printf("%d %d/n",a[0].id+1,a[n-1].id+1); } return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长汀县| 凤冈县| 湄潭县| 五莲县| 浙江省| 长治县| 禹州市| 山西省| 卢氏县| 普安县| 法库县| 台江县| 茌平县| 邵东县| 蓬溪县| 嘉黎县| 射阳县| 中牟县| 当涂县| 平果县| 天气| 壶关县| 罗源县| 清原| 临江市| 保定市| 义乌市| 杂多县| 军事| 红安县| 星子县| 丽水市| 榕江县| 鄄城县| 东辽县| 上虞市| 江油市| 朝阳市| 蓬莱市| 松原市| 平邑县|