碰撞的蚂蚁 牛客网 程序员面试金典 C++ Java Python

mac2022-06-30  61

碰撞的蚂蚁 牛客网 程序员面试金典 C++ Java Python

题目描述

在n个顶点的多边形上有n只蚂蚁,这些蚂蚁同时开始沿着多边形的边爬行,请求出这些蚂蚁相撞的概率。(这里的相撞是指存在任意两只蚂蚁会相撞)

给定一个int n(3<=n<=10000),代表n边形和n只蚂蚁,请返回一个double,为相撞的概率。

测试样例:

3

返回:0.75

C++

class Ants { public: //run:4ms memory:484k double antsCollision(int n) { int sum = 1; for (int i = 0; i < n; i++) sum = 2*sum; return 1 - (double)2/sum; } };

Java

import java.util.*; public class Ants { //run:62ms memory:10584k public double antsCollision(int n) { int sum = 1; for(int i=0;i<n;i++) sum = 2 * sum ; return (1 - (double)2/sum); } }

Python

class Ants: #run:32ms memory:5736k def antsCollision(self, n): sum = 1.0 for i in range(n): sum = 2 * sum return 1 - 2/sum;

 

转载于:https://www.cnblogs.com/vercont/p/10210308.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)