日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JZOJ 3129. 【WinterCamp 2013】数三角形

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JZOJ 3129. 【WinterCamp 2013】数三角形 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

在一只大灰狼偷偷潛入Farmer Don的牛群被群牛發現后,貝西現在不得不履行著她站崗的職責。從她的守衛塔向下瞭望簡直就是一件煩透了的事情。她決定做一些開發智力的小練習,防止她睡著了。

想象牧場是一個X,Y平面的網格。她將N只奶牛標記為1…N (1 <= N <= 100,000),每只奶牛的坐標為X_i,Y_i (-100,000 <= X_i <= 100,000;-100,000 <= Y_i <= 100,000; 1 <= i <=N)。然后她腦海里想象著所有可能由奶牛構成的三角形。如果一個三角形完全包含了原點(0,0),那么她稱這個三角形為“黃金三角形”。原點不會落在任何一對奶牛的連線上。另外,不會有奶牛在原點。

給出奶牛的坐標,計算出有多少個“黃金三角形”。

Input

  • 第一行:一個整數N

  • 第2到第N+1行:每行兩個整數X_i,Y_i,表示每只牛的坐標

Output

  • 第一行: 一行包括一個整數,表示“黃金三角形的數量”

Sample Input

5
-5 0
0 2
11 2
-11 -6
11 -5

Sample Output

5

Hint

考慮五只牛,坐標分別為(-5,0), (0,2), (11,2), (-11,-6), (11,-5)。

下圖是由貝西視角所繪出的圖示。

............|........................*..........*.............|............-------*----+------------............|........................|........................|........................|........................|..........*..*..........|........................|............

Solution

  • 正難則反,總組合數為 C3n ,只要求出不過原點的三角形個數即可。

  • 現將每個點進行極角排序(以原點為頂點、兩邊分別為 x的正半軸 和 原點與這個點的連邊)

  • 按角從小到大枚舉,統計連續的一段,使得組成的三角形不包含原點,則該段可以兩兩匹配。

  • 判斷其是否包含原點,只需要判斷兩向量的叉積是否大于0即可(大于0則不包含)。

  • 時間復雜度為 O(N?log?N)

Code

#include<cstdio> #include<algorithm> #include<cctype> #include<complex> using namespace std; typedef long long LL; typedef complex<LL> point; const int N=1e5+2; point a[N<<1]; inline int read() {int X=0,w=0; char ch=0;while(!isdigit(ch)) w|=ch=='-',ch=getchar();while(isdigit(ch)) X=(X<<3)+(X<<1)+(ch^48),ch=getchar();return w?-X:X; } inline bool upper(point x) {return x.imag()>0 || !x.imag() && x.real()>0; } inline LL cross(point x,point y) {return x.real()*y.imag()-x.imag()*y.real(); } inline bool cmp(point x,point y) {bool xx=upper(x),yy=upper(y);if(xx && !yy) return true;if(!xx && yy) return false;return cross(x,y)>0; } int main() {int n=read();for(int i=1;i<=n;i++) a[i].real()=read(),a[i].imag()=read();sort(a+1,a+1+n,cmp);LL ans=n*1LL*(n-1)*(n-2)/6;for(int i=1;i<=n;i++) a[i+n]=a[i];for(int i=1,j=1;i<=n;i++){while(j<i+n-1 && cross(a[i],a[j+1])>0) j++;ans-=(j-i)*1LL*(j-i-1)/2;}printf("%lld",ans);return 0; }

總結

以上是生活随笔為你收集整理的JZOJ 3129. 【WinterCamp 2013】数三角形的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲成人av在线播放 | 国产精品久久久久久69 | 国产成人久久精品流白浆 | 一区二区三区在线免费视频 | 色亭亭 | 日韩激情网址 | 怎么可能高潮了就结束漫画 | 亚洲 欧美 自拍偷拍 | 亚洲逼 | 秋霞网一区二区三区 | 国产福利资源在线 | 欧美成人三级在线 | 国产精品一区二 | 最新地址在线观看 | 中国一级免费毛片 | 麻豆视频在线观看免费网站黄 | 蜜臀99久久精品久久久久久软件 | 少妇无码av无码专区在线观看 | 夜夜超碰| 亚洲欧洲在线看 | 国产又爽又黄又嫩又猛又粗 | 黄色免费网站在线观看 | 男生女生羞羞网站 | 美女被娇喘流出白 | 国产做受高潮漫动 | v8888av | 亚欧精品视频一区二区三区 | 精品欧美在线观看 | 岛国av动作片 | 亚洲AV无码国产精品国产剧情 | 人妻一区二区三区四区五区 | 日韩欧美高清在线 | 清纯唯美亚洲激情 | 婷婷丁香一区二区三区 | 欧美在线一二 | 国产成人一区二区三区电影 | 永久免费成人代码 | 日本一道本在线 | 激情戏网站 | 欧美一区二区三区影视 | 日本va在线 | 国产深喉视频一区二区 | 日日摸夜夜添夜夜添高潮喷水 | 久久伊人在 | 国产欧美一区二区三区视频 | 国模大胆一区二区三区 | 蜜桃va| 国产精品一色哟哟哟 | 欧美日韩在线中文字幕 | 在线观看日韩中文字幕 | 欧美在线激情视频 | 91免费版在线看 | 激情五月婷婷综合网 | 日韩成人黄色片 | 欧美日韩五区 | 天天爽夜夜爽 | 图片一区二区 | 国产精品无码内射 | 久久久久久不卡 | 深夜激情影院 | 亚色中文字幕 | 天堂av网址 | 美女精品在线 | 日日射av| 黑人玩弄人妻一区二区三区 | 亚洲国产无码精品 | 欧美浪妇xxxx高跟鞋交 | 国产无套免费网站69 | 国产真人毛片 | 男女洗澡互摸私密部位视频 | 男男免费视频 | 天天爽一爽 | 色网站视频| 国产ts网站| 久久久久久伊人 | 色呦呦免费观看 | 久久久久久久久久久久久久久久久 | 蜜美杏av | 黄色一级网| 邵氏电影《金莲外传2》免费观看 | 色先锋在线 | 插插影视 | 日本黄在线观看 | 欧美色图在线视频 | 久久精品国产免费看久久精品 | 激情黄色av | 男女精品视频 | 国产欧美一区二区在线观看 | 妺妺窝人体色WWW精品 | 国产女同在线观看 | 五月天视频网站 | 嫩草网站入口 | 亚洲AV无码乱码国产精品牛牛 | 国产精品久久久久久久久动漫 | 欧美日韩国产传媒 | 国产美女裸体无遮挡免费视频 | 黄色三级小说 | 欧美一区二区精品 | 性自由色xxxx免费视频 |