首页 > 代码库 > lightoj1027
lightoj1027
1 //Accepted 1688 KB 0 ms 2 //概率简单题 3 //假设我们在n个门前加个起点,在n个门后加个终点,起点可以到达n个门, 4 //为正的门可以到达终点,为负的回到起点 5 //则假设我们从起点到终点的期望时间为e 6 //那么e=1/n*sum(x1)+1/n*sum((x2+e)) ,x1>0 x2<0 7 //两边同时乘n后,化简即可 8 #include <cstdio> 9 #include <cstring>10 #include <iostream>11 #include <queue>12 #include <cmath>13 #include <algorithm>14 using namespace std;15 /**16 * This is a documentation comment block17 * 如果有一天你坚持不下去了,就想想你为什么走到这儿!18 * @authr songt19 */20 21 int gcd(int a,int b)22 {23 if (b==0) return a;24 return gcd(b,a%b);25 }26 int sum;27 int n;28 int x;29 int num;30 int main()31 {32 int T;33 int t=0;34 scanf("%d",&T);35 while (T--)36 {37 scanf("%d",&n);38 sum=0;39 num=0;40 for (int i=0;i<n;i++)41 {42 scanf("%d",&x);43 sum+=abs(x);44 if (x>0) num++;45 }46 printf("Case %d: ",++t);47 if (num==0)48 {49 printf("inf\n");50 continue;51 }52 int d=gcd(sum,num);53 printf("%d/%d\n",sum/d,num/d);54 }55 return 0;56 }
lightoj1027
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。