Lightoj 1027 Dangerous Maze (期望)
阿新 • • 發佈:2018-12-15
題意:你在一個迷宮裡,一共有n個門,走進每個門的概率是相同的,如果這個門是個正數(w)代表你將花費w的時間出去
如果是一個負數(-t)代表你將花費w的時間回到原點,回到原點後你選擇每個門的概率還是相同的。(求期望)
思路:根據期望的公式假設期望為a,第三個樣例a=1/3*(3)+1/3*(6+a)+1/3*(9+a)。因為回到原點後期望還是a沒有變。
因為答案是分數的形式,要約分。
#include<stdio.h> #include<iostream> using namespace std; int a[106]; int gcd(int a,int b) { if(b==0) return a; return gcd(b,a%b); } int main() { int t; cin>>t; int o=0; while(t--) { int n; cin>>n; for(int i=0;i<n;i++) { cin>>a[i]; } int w=n,e=0; for(int i=0;i<n;i++) { if(a[i]>0) { e+=a[i]; } else { e+=(-a[i]); w--; } } printf("Case %d: ",++o); if(w==0) printf("inf\n"); else printf("%d/%d\n",e/gcd(e,w),w/gcd(e,w)); } return 0; }