腾讯笔试硬币期望,有大佬做出来的么,怎么感觉题目错了?

#腾讯##笔试题目#
全部评论
取余的话很简单啊,不是数论入门题吗有理数取余
2 回复 分享
发布于 2019-09-02 10:22
做完了不会求模 我佛了
点赞 回复 分享
发布于 2019-09-01 22:00
乘法逆元:(a/b)%mod=a*(b^(mod-2))%mod mod为素数
点赞 回复 分享
发布于 2019-09-02 00:49
我感觉这个特殊的取模规则是把分子 (num) 加上 1e9+7 的整数倍直到能被分母 (den) 整除为止,然后返回整除时的商?类似这样的 M = 10**9+7 step = 0 while step * M + num % den != 0: step += 1 print((step * M + num) // den)
点赞 回复 分享
发布于 2019-09-01 22:16
n = 2 p = 1 q = 0 mod = 1000000007 jie = [] ni = [] def power(a,n,mod):     p = 1     while n>0:         if n%2==1:             p = p*a             p = p%mod         n = n//2         a = a*a%mod     return p%mod def C(n,k):     return jie[n]*ni[k]%mod*ni[n-k]%mod jie.append(1) ni.append(1) for i in range(1,10):     sg = jie[i-1]*i%mod     jie.append(sg)     nio = power(sg, mod-2, mod)     ni.append(nio) sum =0 for i in range(p,n-q+1):     sum = (sum + C(n,i)*(i%mod)%mod)%mod #print(sum) mu = 0 for i in range(p,n-q+1):     mu = (mu + C(n,i))%mod #print(mu) ans = sum * power(mu, mod-2, mod)%mod print(ans) AC代码
点赞 回复 分享
发布于 2019-09-01 22:54
#include <iostream> #include <vector> #include <math.h> using namespace std; int getOne(int num) {     int ret = 0;     int tmp;     while (num) {         ret++;         tmp = num - 1;         num = num & tmp;     }     return ret; } int main() {     int n, p, q;     cin >> n >> p >> q;     long long sum = 0;     int pp = n - q;     int count = 0;     //if (p == n-q)       //  return      for (int i = 0; i < pow(2, n); i++) {         int ones = getOne(i);         cout << "ones:" << ones << endl;         if (ones >= p && ones <=pp) {             count++;             sum += ones;         }     }     cout << "sum:" << sum << " count:" << count << endl;     cout << 1000000007 << endl;     cout << sum * 1000000007 / count << endl; } 这个取模真是服,卡在取模上了
点赞 回复 分享
发布于 2019-09-01 22:21
我只会第一道题
点赞 回复 分享
发布于 2019-09-01 22:09
题目是啥呀?
点赞 回复 分享
发布于 2019-09-01 22:08
为啥我跟你的题不一样,我没有这道题
点赞 回复 分享
发布于 2019-09-01 22:05
from fractions import Fraction n,p,q = map(int,input().split()) mod = 10**9 + 7 # 计算组合 def C(n):     N=n     c = [[0] * (N+1)  for _ in range(N+1)]     c[0][0] = 1     for i in range(1,N+1):         c[i][0] = 1         for j in range(1,N+1):             c[i][j] = c[i-1][j-1] + c[i-1][j]     return c c = C(n) P_pos = 0 P_neg = 0 for i in range(min(p,q),n+1):     if i >= p:         P_pos += c[n][i]     if i >= q:         P_neg += c[n][i] total = 2**n n_chan =  (P_pos * P_neg) // (total) # 求期望 exp = 0 for j in range(p,n+1):     exp += Fraction(j * (P_neg * c[n][j])) / Fraction(total*n_chan) num = exp.numerator den = exp.denominator print(int((mod+num)//den)) 这个取模好恶心,我认为要根据分子分母取模,结果只ac0.1
点赞 回复 分享
发布于 2019-09-01 22:04
谁知道怎么取模😂
点赞 回复 分享
发布于 2019-09-01 22:04
直接求模肯定会超时,不知道为什么不选小一点的数
点赞 回复 分享
发布于 2019-09-01 22:04
20%
点赞 回复 分享
发布于 2019-09-01 22:04
同不会取模
点赞 回复 分享
发布于 2019-09-01 22:03
请问取模是怎么算的呢? 并不是直接result % 1e9+7, 这算哪门子取模啊?😂😂
点赞 回复 分享
发布于 2019-09-01 22:01
自信敲代码 0ac🤣
点赞 回复 分享
发布于 2019-09-01 22:01
暴力取模,30%+超时
点赞 回复 分享
发布于 2019-09-01 22:01
10%
点赞 回复 分享
发布于 2019-09-01 22:01
求答案
点赞 回复 分享
发布于 2019-09-01 21:57

相关推荐

04-16 10:27
已编辑
美团_Saas_后端开发
今天周一休息,突发奇想写一篇阶段总结。如题,我已经去了一个和Java彻底毫无关联的行业。曾经我以为自己能在计算机行业发光发热,拿到美团offer那会感觉自己天都亮了。没想到刚入行一年多就当了逃兵。从最开始的热爱到现在一看到代码就厌恶,不知道自己经历了什么。所以我去干什么了?答案是:在成都当了租房销售。上班那会压力大了就念叨着去干租房中介,但是一直下不去这个决心,想着自己学了四年多的计算机知识,终究还是不甘心。终于在某一天准备八股文的时候,看着无数篇和工作内容关系不大的理论知识,那一刻下定决心,决定尝试一下销售行业,也算是给自己一个交代。后面阴差阳错的投了成都自如去当租房管家,没想到面试很顺利,在当天一百多个面试的人里面,我成为了为数不多通过的几个幸运儿之一。目前已经培训通过,正式入职,也开了单,有压力但是每天过得很开心,真心喜欢那种和人交流的感觉,哪怕是最后没有选择找我租房。说这些也是想告诉那些大三,大四正在找Java实习而焦虑的同学:你们现在还年轻,选择很多,容错率也很高,可以尽情去尝试自己喜欢的行业和工作。不用因为某一次的面试没通过或者简历石沉大海而焦虑,更不用因为身边人都在挤编程的独木桥就强迫自己跟风。也算是自己的碎碎念吧,也希望自己能在新的领域取得一点小成就。也祝牛油工作顺利!
沉淀小子:干啥都不丢人啊,生存是必须要的,销售很考验一个人综合素质能力的,好的销售人脉和资源可不比写字楼的白领差啊
点赞 评论 收藏
分享
评论
点赞
10
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务