<c++算法题>小J的大连奇妙缘分之旅

链接:https://ac.nowcoder.com/acm/contest/52049/C

来源:牛客网

小J在放假末有去大连玩,遇到了特别奇妙且幸运的事情分享给各位

小J去到大连后的第一天的晚上有去大连某广场拍照,小J和小T相识在那天的晚上的拍照。小T来自山东,我们一起聊天甚欢。

第二天下午在完全无任何沟通的情况下,在大连的另外一广场又一次相遇。或许这就是缘分?

后来其实也有发现到爱好和价值观也差不太多hh

小J是蛮珍惜这段比较缘分的,希望可以延续下去这段缘分

-----------------------------------------------------------

说到这小J又要请求你的帮助啦(小J好像是啥都不会hh,总要请你帮忙)

听说小J和小T五一又要去某个地方玩耍啦。

假设小J候选要去的地方有n个地方,小T候选的地方呢有m个,这期间两人没有任何沟通(其实是有的了,现在假设没有)

其实小J还是希望能再见到小T的。

假设你是上帝,你是能知道小J和小T都想去哪里的

现在小J想请你帮忙,问你这次五一小J和小T两人可以再见面的概率是多少(假设小J和小T去自己候选地方的概率都相等)

分析:给定两个人打算去的地方的数组A[n],B[m],让你判段两个人不约而同在下个地点相遇的可能性。直接暴力枚举两个数组里的元素,对枚举出的元素是否相同进行判断,计算出相同的元素个数res,相遇的概率为res/(n*m)

#include <iostream>

usingnamespacestd;

#include <algorithm>

#include <cstring>

typedeflonglongLL;

intn,m;

intmain()

{cin>>n>>m;

LL A[n];

LL B[m];

for(inti=0;i<n;i++)

{

cin>>A[i];

}

for(inti=0;i<n;i++)

{

cin>>B[i];

}

intres=0;

for(inti=0;i<n;i++)

{for(intj=0;j<m;j++)

{

if(A[i]==B[j])

{res++;

}

}

}

floatk=n*m;

floatp=res/k;

cout<<p;

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值