阿里算法内推笔试题

阿里算法内推笔试题#include#include#include#include#include#include#include#include#definepi3.1415926#defineNUM10000usingnamespace

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

#include <iostream>
#include <vector>
#include <numeric>
#include<limits>
#include <cstdio>
#include <math.h>
#include <time.h>
#include <cstdlib>
#define pi 3.1415926
#define NUM 10000
using namespace std;

/** 请完成下面这个函数,实现题目要求的功能 **/
 /** 当然,你也可以不按照这个模板来作答,完全按照自己的想法来 ^-^ **/
double cal(double x,double mul,double sigma)          //计算概率密度函数
{
    double t=sqrt(2*pi);
    double t1=-(x-mul)*(x-mul)/(2*sigma*sigma);
    double f=t*exp(t1);
    return f;
}
bool inside(double x,double y)                   //判断是否在内部
{
    double a=(x*x+y*y-1)*(x*x+y*y-1)*(x*x+y*y-1)-x*x*y*y*y;
    if(a<=0)
        return true;
    else
        return false;
}

double randgass(double minvalue, double maxvalue,double miu, double sigma){
  
  //生成正态随机数
    double x,y,dscope;
    do{
        x=minvalue+(maxvalue-minvalue)*rand()/(RAND_MAX+1.0);
        y=cal(miu,miu,sigma);
        dscope=y*rand()/(RAND_MAX+1.0);
    }while(y<dscope);
    return x;
}

double leartCurve(double mu1, double sigma1, double mu2, double sigma2) {
    double xrange=mu1-3*sigma1;
    double xsplit=6*sigma1;
    double yrange=mu2-3*sigma2;
    double ysplit=6*sigma2;
    double res=0;
    double xp=0,yp=0;
    int num=0;
    srand((unsigned)time(NULL));
    for(int i=0;i<NUM;i++)
    {
        xp=randgass(xrange,xrange+xsplit,mu1,sigma1);
        yp=randgass(yrange,yrange+ysplit,mu2,sigma2);
        if (inside(xp,yp)) num++;
    }
    res=(double)num/NUM;
    return res;
}

int main() {
    double res;

    double _mu1;
    cin >> _mu1;
    //cin.ignore (std::numeric_limits<std::streamsize>::max(), '\n');

    double _sigma1;
    cin >> _sigma1;
    //cin.ignore (std::numeric_limits<std::streamsize>::max(), '\n');

    double _mu2;
    cin >> _mu2;
    //cin.ignore (std::numeric_limits<std::streamsize>::max(), '\n');

    double _sigma2;
    cin >> _sigma2;
    //cin.ignore (std::numeric_limits<std::streamsize>::max(), '\n');


    res = leartCurve(_mu1, _sigma1, _mu2, _sigma2);
    cout << res << endl;

    return 0;

}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195707.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • getopt用法说明

    getopt用法说明一.函数模型#includeintgetopt(intargc,char*constargv[],constchar*optstring);externchar*optarg;externintoptind,opterr,optopt;#include<

    2022年4月29日
    42
  • Spark DataFrame简介(一)

    Spark DataFrame简介(一)

    2021年11月27日
    40
  • Quartus II 13.0sp1 (64-bit)使用教程「建议收藏」

    Quartus II 13.0sp1 (64-bit)使用教程「建议收藏」本人大三在学习计算机组成原理,要用到QuartusII13.0sp1(64-bit),但是下载安装完以后发现不会用,世界这么大,百度也没有任何收获,啊啊啊,昨天终于会用了,所以写了这个教程,希望对大家有用,详情见图片这里会弹出来一个框,然后(next)然后得到下面这个图这里也有一个(next)省略了,都是点一下哦然后(next)——》(finsh)module…

    2022年10月10日
    2
  • 旌扬机器人_“http://club.liangchanba.com/”搜索蜘蛛、机器人模拟抓取结果–站长工具…

    旌扬机器人_“http://club.liangchanba.com/”搜索蜘蛛、机器人模拟抓取结果–站长工具…量产部落_量产吧论坛_量产之家_量产网_U盘之家_固态硬盘之家_U盘量产工具_SSD量产工具_固态硬盘开卡软件-提供量产工具和相关资料下载-量产吧论坛-专业U盘/SSD量产交流网站量产部落,量产吧论坛,量产之家,量产网,U盘之家,固态硬盘之家,U盘量产工具,SSD量产工具,固态硬盘开卡软件量产部落(LCB.CLUB)提供量产工具和相关资料下载请登录后使用快捷导航没有帐号?加入部落…

    2022年5月31日
    31
  • html设置固定长度下划线

    html设置固定长度下划线<spanstyle=”border-bottom:2pxsolidblack;width:200px;display:-moz-inline-box;display:inline-block;”>bbbb</span>

    2022年6月3日
    84
  • python实现注册登录系统_python实现登录与注册系统「建议收藏」

    python实现注册登录系统_python实现登录与注册系统「建议收藏」本文实例为大家分享了python实现登录与注册系统的具体代码,供大家参考,具体内容如下实现功能1.调用文本文件里的用户信息2.可以将注册信息存储在文本文件里3.实现了密码格式的限制具体用户信息将如下格式存储在txt文本文件下转换后便于代码利用的格式(列表中嵌套字典)具体代码如下:#-*-coding=utf8-*-#@author:sololi#date:2020/11/3#文件说…

    2022年5月22日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号