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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

uva 11971 Polygon

發布時間:2023/12/10 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 uva 11971 Polygon 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

https://vjudge.net/problem/UVA-11971

?

有一根長度為n的木條,隨機選k個位置把它們切成k+1段小木條。求這些小木條能組成一個多邊形的概率。

?

將木條看做一個圓,線上切k刀等價于圓上切k+1刀

如果能組成多邊形,每一段木條的長度都要<圓周長/2

反過來,如果不能組成多邊形,有且僅有一段長度>=圓周長/2

?

如圖所示,第一刀可以隨便切,接下來的每一刀都要在第一刀所在的那個半圓上

概率=(1/2)^k

每一個切點處,都可以斷開成為線,共有k+1種斷法

所以不能構成多邊形的概率=(k+1)*(1/2)^K

答案就是用1減去它

?

注意:這是幾何概型,可能情況無限,所以不能分析每一刀具體切在哪兒

?

?

?

?

#include<cstdio> #include<algorithm> using namespace std; long long fz,fm,gcd; long long bit[51]; int main() {int t,n,k;bit[0]=1;for(int i=1;i<=50;i++) bit[i]=bit[i-1]*2; scanf("%d",&t);for(int i=1;i<=t;i++){scanf("%d%d",&n,&k);fz=bit[k]-k-1;fm=bit[k];gcd=__gcd(fz,fm);fz/=gcd; fm/=gcd;printf("Case #%d: %lld/%lld\n",i,fz,fm);} }

?

轉載于:https://www.cnblogs.com/TheRoadToTheGold/p/6941742.html

總結

以上是生活随笔為你收集整理的uva 11971 Polygon的全部內容,希望文章能夠幫你解決所遇到的問題。

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