我是靠谱客的博主 体贴八宝粥,最近开发中收集的这篇文章主要介绍AtCoder - 4189(思维),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这里写图片描述
这里写图片描述
这里写图片描述

分析:
一个公式。
d>0的话,(n-d)2(m-1)*pow(n,m-2)/pow(n,m);
d<0的话,(n-d)2(m-1)*pow(n,m-2)/pow(n,m);
拿n=4,m=3,d=1,举例:
n-d就是可能出现的组合,比如说(0,2)(1,3)(2,4),乘以2,就是相反的也可以。
pow(n,m-2)就是剩余位置可以填的数。

#include <bits/stdc++.h>

using namespace std;

int main()
{
    double n,m,d;
    double ans;
    cin>>n>>m>>d;
    if(d!=0)
    ans=1.0*2*(n-d)*(m-1)/(n*n);
    else
        ans=1.0*(n-d)*(m-1)/(n*n);
    printf("%.10f",ans);
    return 0;
}

最后

以上就是体贴八宝粥为你收集整理的AtCoder - 4189(思维)的全部内容,希望文章能够帮你解决AtCoder - 4189(思维)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部